Jump to content


This topic is now archived and is closed to further replies.


Adding custom CSS to single page template

Recommended Posts


I'm building a careers page using a 3rd party plugin. I'd like to add a separate external style sheet to this page template because the styles are fairly voluminous and they don't apply to other pages.


Is that possible? Any other suggestions?

Share this post

Link to post
Share on other sites

You can add page specific CSS by prefixing your CSS by using


Replace xxx with the ID of your page found in the Visual Editor > page setup. 

The answer to many issues can be found by searching in the forum before posting as someone else  may very well have had the same problem before you have.  Also, reading the documentation can help you gain a good understanding of how everything works. 


Please do not send me private messages. Occam's razor - The principle states "Keep things simple!"

Share this post

Link to post
Share on other sites
Martin Davies thanks for the pointer, but I'm not entirely sure what you're suggesting? Are you saying I should add this in the custom CSS panel? Can you show me an example? Will this prevent that CSS from loading on other pages?


Share this post

Link to post
Share on other sites

WordPress includes special classes that are assigned to the body tag. These special classes are dynamic as they're different on what page you're viewing on your WordPress site. For example,


if you view a category, the body class will have a category class for that category

if you view a post, it will have a unique class for that post, the same applies to pages etc...


You can use these classes to add individual styling for posts, pages, blog, category, archive and so forth. As Martin mentioned above, if you inspect your page using Google Chrome's dev tools, you will see a number of a classes in the body tag of your page/post.

It will look something like this page-id-41 (your id will be different most likely, so instead of 41 you will see a different value).


Now what you can do with this, is prefix your custom CSS with that class and this will allow you to add individual styling for that page or post.


For example, let's imagine you want to have a pink h1 on your about page. What you will need to do is go to your About page, then inspect the page using Chrome's dev tools and get the ID for that page.


Then use that in your code like so.


.page-id-666 h1 { color: pink; }


You can use the same principle for sections or sidebars. For example, lets say you want to give the Masthead sections title a unique color for your Contact us page. Again you inspect the page using dev tools, find the page id and use that class as a prefix in your CSS.


.page-id-123 .section-masthead h1 { color: #428BCA; }


This will give the Masthead sections title a bluish color for that page and that page alone.


Please search our forums, before posting!

Share this post

Link to post
Share on other sites

  • Similar Content

    • gstrahle
      By gstrahle+
      I am hoping to figure out how I can get my PageLines Full Nav to display layered in front of a sticky footer element on my website - 3keymedia.com
      I would like the Full Nav to overlay the entire screen when opening the menu as you will see when opening on a desktop the footer of nav content is cropped by the sticky footer.

    • Christian
      By Christian+
      Hi everyone, since Instagram had allowed to publish in different ratio formats (instead of only square ratio) the grams stripe has different heights. Can you tell me if i can fix it easily with some CSS?
    • Michael Kummer
      By Michael Kummer+
      Hi guys!
      I have noticed that my primary sidebar becomes intermittently invisible when browsing through various blog articles on michaelkummer.com/blog.
      https://www.dropbox.com/s/z646sgoa3mfjl1j/Screenshot 2018-07-12 15.57.46.jpg?dl=0 and https://www.dropbox.com/s/vdledzzgginvwgv/Screenshot 2018-07-12 15.57.57.jpg?dl=0
      Upon refresh, the sidebar appears. I have been using the following CSS code to hide the sidebar on mobile without any issues. 
      @media only screen and (max-width: 993px) {
      /* hide sidebars */
           .plsb {
              display: none !important;
      I tried to add the following CSS to force the sidebar to show on screens that are wider than 994 pixels but to no avail. Any clue what could be causing this issue?
    • Michael Kummer
      By Michael Kummer+
      Hi guys!
      I am using the LESS/CSS Pagelines extension and tried to add the following code to make use of FontAwesome:
      a.c2a:before {
          content: "\f07a\00a0";
          font-family: "Font Awesome 5 Pro";
          Font-weight: 900;
          font-style: normal;
          font-weight: normal;
          text-decoration: inherit;
          padding-left: 4px;
      The issue is that as soon as I have the CSS via the Custom Styling text box, Pagelines (or the extension) strips out the backslashes (\). As a result, I had to abandon the CSS/LESS extension and instead add all my CSS code to a separate .css file.
      Is there a fix or workaround for this?
    • glyph.marketing
      By glyph.marketing+
      Hello, I am having a problem similar to that experienced by Michael Kummer here. We have pages that show this automatic scrolling issue (examples here and here) and it is sufficiently annoying that we have seen customers bounce while trying to convert. Strangely, it only happens at specific resolutions, so it can be difficult to reproduce. In general we can only consistently reproduce it on a 4k resolution with a browser width between 1517 and 1536px. 
      Thanks to Michael Kummer's help we were able to set the overflow-anchor property to none in the entire body, which fixed the issue as far as we can tell, but also obviously disabled scroll anchoring for the whole site. I tried applying it to the specific element that looked like it was being reloaded, which was the PL Meganav extension, but that was unsuccessful. 
      Can anyone help us figure out which element or ID we can apply this property to, so that we can fix the scrolling issue but not disable scroll anchoring for the entire site?
      Thank you - 
      Glyph Language Services