2013-02-07 12 views
14

Mam następującą strukturę HTML: -dokonywania rozpiętość tag pokrywa całą szerokość div

<div> 
    <span> 
    <a href="wherever">Wherever</a> 
    </span> 
</div> 

Jeśli chcę rozpiętość pokryć całą szerokość div, w jaki sposób mogę to zrobić w Chrome?

Próbowałem w css za pomocą

span{ 
    background:#FFF; 
    width:100%; 
} 

to działa w Firefox i IE, ale nie w chromie.

+1

Można spróbować ustawić 'display: block;'. Ale nie sądzę, że element 'span' jest rzeczywiście semantycznie poprawny dla tego zadania. – w00

+0

Dlaczego nie usunąć przęsła i po prostu ułożyć div? – dotty

Odpowiedz

38

span elementy są wbudowane. Elementy śródliniowe automatycznie dostosowują szerokość i ignorują wyrażenia width:.

Zrób to block-level:

span { 
    display: block; 
} 

Ale to w zasadzie tylko <div>. CSS

1

Zmień rozpiętość do:

span { 
display: block; 
} 
-1

Spróbuj tego:

div{ 
    padding:0px; 
} 
span{ 
    background:#FFF; 
    width:100%; 
} 
2

Istnieją dwa sposoby, aby rozwiązać problem.

Jako tagi span dostosuj ich szerokość zgodnie z zawartością. Aby przypisać szerokość do tego tagu, użyjemy float left with width.

span{ 
background:#FFF; 
width:100%; 
float: left; 
} 

secod sposobem jest użycie bloku wyświetlacza z kodem

span{ 
background:#FFF; 
width:100%; 
display: block; 
} 
+0

szerokość: 100% jest bardzo ważne. Gdybym mógł, oddałbym ci tumb'y. – Esther

Powiązane problemy