Mam następujący HTML:
<div class="title">
<span>Cumulative performance</span>
<span>20/02/2011</span>
</div>
z tym CSS:
.title
{
display: block;
border-top: 4px solid #a7a59b;
background-color: #f6e9d9;
height: 22px;
line-height: 22px;
padding: 4px 6px;
font-size: 14px;
color: #000;
margin-bottom: 13px;
clear:both;
}
Jeśli zaznaczysz ten jsFiddle: http://jsfiddle.net/8JwhZ/
widać, że nazwa i data są sklejone. Czy istnieje sposób, aby ustawić datę w prawo? Próbowałem float: right;
na drugim, <span>
ale psuje styl i wypycha datę poza otaczający element div
Odpowiedzi:
Jeśli możesz zmodyfikować kod HTML: http://jsfiddle.net/8JwhZ/3/
źródło
<span style="float: right">
Praca z pływakami jest nieco skomplikowana:
To, podobnie jak wiele innych „trywialnych” sztuczek układu, można zrobić za pomocą flexbox.
Myślę, że w 2017 jest to preferowane rozwiązanie (ponad float), jeśli nie musisz obsługiwać starszych przeglądarek: https://caniuse.com/#feat=flexbox
Sprawdź, jak różne zastosowania float wypada w porównaniu z flexboxem („może zawierać konkurencyjne odpowiedzi”): https://jsfiddle.net/b244s19k/25/ . Jeśli nadal musisz trzymać się float, polecam oczywiście trzecią wersję.
źródło
float: left;
ifloat: right;
rozpiętościach zawierających elementy, które chcesz rozstawić .float
to wymagane w elementach wewnętrznych, ponieważ myślałem, że jest to zdefiniowane w przykładzie dla nich na skrzypcach, ale#testD
nie jest zdefiniowane. Mój błąd!Alternatywnym rozwiązaniem dla pływaków jest użycie pozycjonowania bezwzględnego:
Zobacz także skrzypce .
źródło
Możesz to zrobić bez modyfikowania pliku HTML. http://jsfiddle.net/8JwhZ/1085/
źródło
Rozwiązanie wykorzystujące flexbox bez
justify-content: space-between
.Kiedy używamy
flex:1
pierwszego<span>
, zajmuje on całą pozostałą przestrzeń i przesuwa drugi<span>
w prawo. The Fiddle z tym rozwiązaniem: https://jsfiddle.net/2k1vryn7/Tutaj https://jsfiddle.net/7wvx2uLp/3/ możesz zobaczyć różnicę między dwoma podejściami flexbox: flexbox z
justify-content: space-between
i flexbox zflex:1
pierwszym<span>
.źródło