Does Display: none on duplicate content affect SEO/Semantics?
Suppose you're building a mobile-first, responsive site. At smaller breakpoints, you've opted to show your page's heading tagline (<h1>
) in the main hero banner. However, later, you'd like to display a company logo in that same spot, and display your tagline in a sub banner. For example:
<!-- Assuming following markup -->
<header class="hero-banner">
<h1 class="hide-on-lg">Company Tagline</h1>
<img src="..." class="show-on-lg" />
</header>
<div class="subhead-banner">
<h1 class="show-on-lg">Company Tagline</h1>
</div>
...with the following CSS:
.hide-on-lg {
display: block;
}
.show-on-lg {
display: none;
}
@media (min-width: 1200px) {
.show-on-lg {
display: block;
}
.hide-on-lg {
display: none;
}
}
The semantic rule is that you should never have more than a single h1
on a page, so my question is this:
Does having that duplicate content affect SEO, or violate semantics, if only one variation is ever actually visible?
Is Duplicate Content Bad For SEO? Officially, Google does not impose a penalty for duplicate content. However, it does filter identical content, which has the same impact as a penalty: a loss of rankings for your web pages.
Duplicate content is content which is available on multiple URLs on the web. Because more than one URL shows the same content, search engines don't know which URL to list higher in the search results. Therefore they might rank both URLs lower and give preference to other webpages.
There are a handful of SEO tools that have features designed to spot duplicate content. For example, Siteliner scans your website for pages that contain lots of duplicate content. Like I mentioned, if you have lots of pages with straight up duplicate content, you probably want to redirect them to one page.
Google crawls CSS ‘display:none’ Content, so it is duplicate content. More info here http://seoshrugged.com/2014/07/13/does-google-crawl-css-displaynone-content/
Yes, apparently it will adversely affect SEO; Google does take into account CSS being used to render a page (black text on a black background, etc..). Additionally, it is indicated there should only be one H1 tag per page, etc... A better way to still have relative 'dynamic' functionality in your case might be to use a combination of your media queries (bootstrap?) and jquery and change the style and position of it dynamically without necessarily calling them both an H1.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With