How to add a line behind post title, date or text

Today’s post will show you how to add a line behind text on your blog, in a similar way to strikethrough or deleted text but instead of the line going through the text it will appear behind it, like so

How to add a line behind post title, date header, gadget title, text or headings

This is usually seen as an image, but it is possible with a little bit of code. It’s a great way to make text stand out while maintaining a clean and simple style. This tutorial will show you how to add it to your post title but you can adjust the code to work with the text you are using like your post date header, gadget titles or heading tags.

How to add a line behind post title

1. Go to Template > Edit HTML. Press CTRL F / CMD F and search for post-title entry-title. This will appear twice in your template, look for the second instance. Use the numbering on the side to help you.

If you aren’t sure, take a look at the code about 20 lines above it. It should have <b:includable id='post' var='post'> and not <b:includable id='mobile-post' var='post'>.

You should see something similar to the following

<b:includable id='post' var='post'>
  <div class='post hentry' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
    <b:if cond='data:post.firstImageUrl'>
      <meta expr:content='data:post.firstImageUrl' itemprop='image_url'/>
    </b:if>
    <meta expr:content='data:blog.blogId' itemprop='blogId'/>
    <meta expr:content='data:post.id' itemprop='postId'/>

    <a expr:name='data:post.id'/>
    <b:if cond='data:post.title'>
      <h3 class='post-title entry-title' itemprop='name'> 
      <b:if cond='data:post.link'>
        <a expr:href='data:post.link'><data:post.title/></a>
      <b:else/>
        <b:if cond='data:post.url'>
          <b:if cond='data:blog.url != data:post.url'>
            <a expr:href='data:post.url'><data:post.title/></a>
          <b:else/>
            <data:post.title/>
          </b:if>
        <b:else/>
          <data:post.title/>
        </b:if>
      </b:if>
        </h3> 
    </b:if>

2. After <h3 class='post-title entry-title' itemprop='name'> add the following

<span>

Before </h3> add the following

</span>

3. Now we need to add the CSS. Find ]]> </b:skin> in your Template and add the following above it

/* STARTS LINE BEHIND POST TITLE - XOMISSE */

h3.post-title::before {
border-top: 1px solid #666; /* changes the border width, style, colour */
margin-top: 10px; /* moves the line up or down */
content: " ";
position: absolute;
left: 0;
right: 0;
z-index: 0; }

h3.post-title span {
background: #FFF; /* text background color to cover line */
padding: 0 20px; /* adds space to either side of the text */
position: relative;
z-index: 1 !important;
margin: 0 auto; }

.post-title.entry-title { text-align: center; }

/* ENDS LINE BEHIND POST TITLE - XOMISSE */

4. Save and make adjustments to the CSS in pink if needed.

5. To apply it to other text – add <span> tags around the text. Change the selector in the CSS to be for that text. Example – for the post date it might be h2.date-header instead of h3.post-title.

Join over 1,000 creators starting, building and growing their online business

Making marketing more manageable (even with limited time, money and know-how) with the latest strategies, insights and updates delivered to straight to your inbox.

By signing up you’ll receive The Roundup newsletter and additional resources. No spam or unnecessary emails. You can unsubscribe at any time.

55 responses to “How to add a line behind post title, date or text”

  1. Chrissy avatar

    This is wonderful! Thank you so much!

  2. Farah avatar
    Farah

    Really confused this has’t worked for me trying to do it for the date but doesn’t change anything

    1. Elaine M avatar

      Hello. Make sure to follow step 5 and replace the CSS selectors with the ones for your text. So change h3.post-title in the CSS to h2.date-header or .date-header to apply it to the date.

  3. Naomi avatar

    Thank you so much for the tutorial but I’m not being able to change the background color of the text. The line shows through the text.

    1. Elaine M avatar

      Hello, I can’t get onto your blog to have a look for you. Make sure to wrap the text in span tags and that the selectors are correct for that text.

  4. Lara avatar

    Hey,

    i love the idea of the line behind my post title. I am using a Blogger template, which isn’t from Blogger itself. I could only find (post-title entry-title) after (b) and not after (b). Is there any other place where i could but the ()?

    1. Elaine M avatar

      Hello Lara. Code is not allowed in the comments so I cannot see the code you have added. Please use a Gist or similar to share the code again. I’ve just had a look and you’re using a custom template so the code is completely different to that in Bloggers Template. Look for the h2 tags under post-heading in your template, you can use those instead.

      1. Lara avatar

        Hey 🙂
        Thanks for the quick answer 🙂
        I added the CSS after the skin etc. and i added the like this https://gist.github.com/anonymous/6c11bcf9226460a27822. Is this placement right? And do i have to change anything in the CSS Code, because it is still not working :/

        1. Elaine M avatar

          Double check that the CSS is before ]]> </b:skin>, use .post-heading h2 instead of h3.post-title. You may have to do some extra editing in the CSS to get it to fit your design perfectly since it is custom. The opening span in the gist (<span>) needs to go before <data:post.title/> 🙂

  5. Hayley avatar

    I love this code, and your blog. It’s been a great help to me.

  6. Emma Watson avatar

    Awesome blog. Thanks for the tutorial. Tried it and it worked. 🙂

  7. Abbie avatar

    Thank you of this tutorial, was so helpful :)!

  8. Erika avatar

    Wonderful tutorial, Ellie! Though I was wondering, if I wanted to have this kind of CSS, within the post, how would I do that, if it were possible?

    1. Elaine M avatar

      Thank you Erika! It would be the same, you’d have your heading or div tag (or whatever you wanted to identify that text as), the span tag and then the text. The CSS would be the same but the selectors (h3.post-title) would reflect your code instead.

  9. makara avatar

    thank you so much!!

  10. Katie avatar

    Thanks for the tutorial, it was a great help!!

  11. kayleigh avatar

    Hi

    Thank you so much for this…very helpful!

  12. Erika avatar
    Erika

    Hi, I wanted to use this for my sidebar, how would I do that?

    1. Elaine M avatar

      Find the gadget / widget titles in your template file and add the code. Then ad the CSS to your style.css file 🙂

  13. kirstin avatar

    Hi! Would if i can’t find step 3 on my html template? it’s not showing up when i search it!

  14. Dyan avatar

    Anyway to disable this on a custom mobile template? It looks fab on my desktop version, but ends up looking like a strikethrough on my custom mobile.

    1. Elaine M avatar

      You can remove it from mobile by “un-doing” the CSS for mobile devices. For example adding border-top: 0px solid #000; for .mobile h3.post-title::before. Does that make sense?

  15. Mira avatar

    Thank youuuu! Very helpful and perfect for beginners 🙂

  16. allison avatar
    allison

    hi misse is there a code to adjust the width of the line so it isn’t so long & wide? otherwise code is perfect. I’ve been looking for this. Thank you!

    1. Elaine M avatar

      Hey, it will be the same width as what you are adding it to so you can change the width of that element to adjust it. For example, if you’ve added the line behind you post title you can adjust the width by adding h3.post-title {width: 500px;}

  17. Ha avatar

    Hi Elaine!
    I did all of the above but the line still show through the text. And I did as your direction of finding ]]> but I can’t still find it. I found ]]> instead and pasted the CSS above it. Is that why it did not work? Thank you for your Post!! help me starting my blog a lot!!

    1. Elaine M avatar

      Hello. Code doesn’t work in the comments, please use a Gist instead to share code. CSS needs to be added above ]]> </b:skin> and not above <b:skin>.

  18. Aaliyah avatar

    This worked perfectly, thank you! 🙂

  19. Sophie avatar
    Sophie

    Hey Elaine, thank you so so much for sharing this! I have applied this to my date header, but I was wondering how I would be able to apply this to just my page titles as well? When I applied this to my post titles it also worked for the page titles, but I didn’t end up liking it for my post titles.

    1. Elaine M avatar

      Hey Sophie, I have a post going up on Monday that will show you how to apply it only to pages 🙂

      1. Sophie Smith avatar
        Sophie Smith

        Ok great, thankyou!

  20. Taylor avatar

    I’m trying to add this to my sidebar widget titles, but I’m having trouble finding the selector for ALL of them in my template. I found the ones for specific widgets– is this something I’ll have to add to them individually?

    1. Elaine M avatar

      Hello, yes unfortunately you do have to add it to each one in Blogger.

  21. Lei avatar
    Lei

    doesnt work for me! help im using the simple template from blogger

    1. Elaine M avatar

      Hello, I’ll need your URL to see what the issue is.

  22. Auburn avatar

    It worked for me except for the fact that the line goes all the across the page. the only gap is where my date is. how can i fix that? thanks

    1. Elaine M avatar

      Hello Auburn. You’ll have to tweak it since you have an older Blogger Template that’s been customised. I can’t give you exact instructions since it isn’t a default Blogger template or one I’ve developed myself, therefore I’m not familiar with how it has been coded, but you’ll probably need to add a width, adjust the starting position and change the post title link from block to inline. Sorry I couldn’t be more help!

  23. NINDY avatar

    Dear Elaine,

    Can you tell me what exact code to find when I want to apply this on date header? I mean, where should I put the “span” thing? It works on the post title and now I wanna apply it on the date header and can’t find the right place to put it 🙁

    Thanks! 🙂

    1. Elaine M avatar

      Hello, the span tags are already wrapped around the date so you just have to apply the CSS 🙂

  24. Ciara avatar

    Thanks once again for another easy to follow tutorial! My blog is starting to look so pretty thanks to your fantastic tutorials 🙂

  25. deap avatar

    Hi Ellie,
    I’m having a hard time locating the title for each sidebar gadgets. 🙁 And I don’t have any idea where to put . 🙁 Can you please help me with this? And also, how would I make the entire background of my post date in white? There’s a thin gap between my post date and post title. 🙁 Thank you so much, Ellie! 🙂

  26. Kamlesh Jolapara avatar

    Thanks Elaine. I find your blog very informative and useful. Keep it up! Great job…
    Kamlesh Jolapara

  27. Shari avatar
    Shari

    Can this be done on WordPress too? I would love to know the code and how. Thanks Elaine!

    1. Elaine M avatar

      Hello, yes it can. The same method can be used but the selector you use will depend on what theme you are using, like in step 5.

  28. Isabellouise avatar

    Hi Elaine! I’ve been having problems applying this code to my date header, I followed all the instructions and changed the CSS to apply to the date header. Also I was wondering how you can apply letter spacing inbetween the date header? Thank you so much for your help!

    Isabel Louise

  29. Shireen L. Platt avatar

    Is there a way to do this for just the date? I just want my date to be in between the lines and not the post title.

    1. Shireen L. Platt avatar
      Shireen L. Platt

      Sorry but my problem is finding ]]> in my HTML, nothing seems to be showing up.

      1. Elaine M avatar

        The tutorial here talks through the steps to find it.

    2. Elaine M avatar

      Hello, yes just use the date selector as explained in step 5.

  30. Sudheeksha avatar

    I was able to add the line beside the date. Thanks a lot for the tutorial. But there’s a problem. I have a premade template for my blog and the date in it is displayed in lower case letters. I want to change the font as well as make it into upper case letters. Please help.

    1. Elaine Malone avatar

      Hello. Add text-transform: uppercase; to the date header span in CSS, it will change the text.

  31. Esma avatar
    Esma

    will this work on awesome inc template in blogger?

  32. Shelly avatar

    I’m trying to put the line behind my date-header, but it is currently blocking my date. How do I have the date show in front of the line and have some white to hide the part of the line that’s directly behind the date? My blog is http://www.arizonagirl.com/. Thank you!