2010-08-17 9 views
20

Mam element dodaje Li:Pozwolić, aby zakres wypełnienia pozostała szerokość?

<li> 
    <span style='float:left; background-color:red'>a</span> 
    <span style='float:left; background-color:green'>b</span> 
</li> 

chciałbym rozpiętości po prawej stronie, aby wypełnić szerokość co jest pozostały w jego macierzystej li. Czy jest jakiś sposób na zrobienie tego?

Dzięki

Odpowiedz

18

Nie chcesz się unosić każdy z nich w lewo, tylko pierwszy z nich, a następnie dokonać drugi wyświetlacz w trybie grupowym:

<li> 
    <span style='float:left; background-color:red'>a</span> 
    <span style="display: block; background-color:green;">b</span> 
</li> 
+8

To nie jest poprawne (nie jest też druga odpowiedź): Span nie wypełnia reszty szerokości, wypełnia całą szerokość - dwie przęsła pokrywają się. – Daddy32

+4

Możesz zapobiec nakładaniu się przęseł, ustawiając "overflow: hidden;" na drugim. – pvans

7

szukali tego samego roztworu, ale okazało się, tylko ten, który pracował wielki dla mnie:

<li> 
    <span style='display: table-cell; background-color:red'>a</span> 
    <span style='display: table-cell; width: 100%; background-color:green'>b</span> 
</li> 

Wszystko czego potrzebujesz jest tylko przy użyciu table-cell wyświetlania i s i szerokość wypełniacza do 100%. Wszystkie inne rozwiązania, które wypróbowałem, nie zadziałały zgodnie z oczekiwaniami.

+0

Wprowadziłeś literówkę w 2. span: "dispaly". Również cytaty są tradycyjnie podwójne przy ustalaniu stylu, więc powinno być: style = "..." –

+3

@ LechOsiński Dzięki, poprawiono. Co powiesz na "tradycje z podwójnymi cytatami" - nie pewne, czy tradycje mają jakiś sens w IT/nauce. W3.org nie preferuje żadnego rodzaju cytatów. –

Powiązane problemy