horizontal line and right way to code it in html, css
I need to draw a horizontal line after some block, and I have three ways to do it:
1) Define a class h_line
and add css features to it, like
#css
.hline { width:100%; height:1px; background: #fff }
#html
<div class="block_1">Lorem</div> <div class="h_line"></div>
2) Use hr
tag
#css
hr { width:100%; height:1px; background: #fff }
#html
<div class="block_1">Lorem</div> <hr />
3) use it like a after
pseudoclass
#css
.hline:after { width:100%; height:1px; background: #fff; content:"" }
#html
<div class="block_1 h_line">Lorem</div>
Which way is the most practical?
回答1
hr {
display: block;
height: 1px;
border: 0;
border-top: 1px solid #ccc;
margin: 1em 0;
padding: 0;
}
<div>Hello</div>
<hr/>
<div>World</div>
Here is how html5boilerplate does it:
hr {
display: block;
height: 1px;
border: 0;
border-top: 1px solid #ccc;
margin: 1em 0;
padding: 0;
}
回答2
I‘d go for semantic markup, use an <hr/>
.
Unless it‘s just a border what you want, then you can use a combination of padding, border and margin, to get the desired bound.
HTML <hr> Tag
Definition and Usage
The <hr>
tag defines a thematic语干的 break in an HTML page (e.g. a shift of topic).
The <hr>
element is most often displayed as a horizontal rule that is used to separate content (or define a change) in an HTML page.