Satır

2015-02-10 26 views
7

için Pseudo öğesinden önce ve sonra kullanın Bir başlıktan önce ve sonra bir çizgi çizmek için Sözdizimi öğesi :before ve :after kullanıyorum. Bir görüntü ile çalışıyor: Böyle genişletmek ve başlığın öncesi ve sonrası bütün div doldurmak için çizgiyi istiyorum,Satır

you can see befor and after the 1px white horizontale line

Ama: Burada

.mydiv::before { 
content: url(img/line.png);} 
.mydiv::after { 
content: url(img/line.png);} 

sonucudur :

The line reach reach the both sides of the div

o germek için resim için bir yüzdesini belirlemek için bir yolu var mı? Bunu deneyin, ama işe yaramıyor:

.mydiv img { 
    width: 100%; 
    height: auto; 
} 
+4

Neden bir resim kullanmak? Sadece sınır-altını yap. – Slime

+0

slime dedi ki ... neden bir resim kullanın ... kontrol edin http://stackoverflow.com/questions/15557627/css-title-with-horizontal-line-on-either-side – LinkinTED

cevap

8

Hem :before ve :after, 2 ya yeterli olacak ve söylendi olarak, bir resim gerekmez gerekmez. Aşağıdaki yaklaşıma bakın.

#header { 
 
    width: 100%; 
 
    height: 50px; 
 
    margin: 50px 0; 
 
    text-align: center; 
 
    font-size: 28px; 
 
    position: relative; 
 
    background-color: #57585C; 
 
} 
 

 
#header:after { 
 
    content: ''; 
 
    width: 100%; 
 
    border-bottom: solid 1px #fff; 
 
    position: absolute; 
 
    left: 0; 
 
    top: 50%; 
 
    z-index: 1; 
 
} 
 

 
h3 { 
 
    background-color: #57585C; /* Same as the parents Background */ 
 
    width: auto; 
 
    display: inline-block; 
 
    z-index: 3; 
 
    padding: 0 20px 0 20px; 
 
    color: white; 
 
    position: relative; 
 
    font-family: calibri; 
 
    font-weight: lighter; 
 
    margin: 0; 
 
}
<div id="header"> 
 
    <h3>Last Projects</h3> 
 
</div>

+1

İyi çalışıyor. Çizgiyi gizlemek için arka plan rengini kullanıyorum. Teşekkürler – Guillaume

+0

@Guillaume teşekkürler. Yardımcı olduğuma sevindim. –