Here, each section of a page should have its specific style. For example, in the code below, I'd like that the headers and paragraphs of section-a
and section-b
had, each, their own style. But it's not working with my approach.
There's no global styles for <p>
and <h2>
that could be conflicting with those from
section-a
and section-b
.
And I'd prefer not adding the style per line - like <p id="section-a">
- to keep the code cleaner.
h2 {
font-family: 'Wellfleet', cursive;
}
p {
font-family: 'Roboto Mono', monospace;
}
h2#section-a {
color: red;
}
p#section-a {
color: black;
}
h2#section-b {
color: blue;
}
p#section-b {
color: white;
}
<div id="section-a">
<h2>LOREM</h2>
<p>Lorem ipsum dolor sit amet, <a href="#">consectetur</a> consequat.</p>
</div>
<div id="section-b">
<h2>LOREM</h2>
<p>Lorem ipsum dolor sit amet, <a href="#">consectetur</a> consequat.</p>
</div>
CodePudding user response:
First you should use the semantic <section>
-tag for sections instead of div's
. Then your selector is wrong. h2#section-a
looks for an h2 elment with the id section-a
. What you looking for as selector should be: #section-a h2
:
h2 {
font-family: 'Wellfleet', cursive;
}
p {
font-family: 'Roboto Mono', monospace;
}
#section-a h2 {
color: red;
}
#section-a p {
color: black;
}
#section-b h2 {
color: blue;
}
#section-b p {
color: white;
}
/* added for visualisation purpose */
body {
background-color: grey;
}
<div id="section-a">
<h2>LOREM</h2>
<p>Lorem ipsum dolor sit amet, <a href="#">consectetur</a> consequat.</p>
</div>
<div id="section-b">
<h2>LOREM</h2>
<p>Lorem ipsum dolor sit amet, <a href="#">consectetur</a> consequat.</p>
</div>
CodePudding user response:
Change the order of your css selectors.
From p#section-a
To #section-a p
h2 {
font-family: 'Wellfleet', cursive;
}
p {
font-family: 'Roboto Mono', monospace;
}
#section-a h2 {
color: red;
}
#section-a p {
color: black;
}
#section-b h2 {
color: blue;
}
#section-b p {
color: white;
}
<div id="section-a">
<h2>LOREM</h2>
<p>Lorem ipsum dolor sit amet, <a href="#">consectetur</a> consequat.</p>
</div>
<div id="section-b">
<h2>LOREM</h2>
<p>Lorem ipsum dolor sit amet, <a href="#">consectetur</a> consequat.</p>
</div>