Saya mencoba untuk mendapatkan beberapa komponen inline
dan inline-block
disejajarkan secara vertikal dalam a div
. Bagaimana bisa span
dalam contoh ini bersikeras ditekan? Saya sudah mencoba keduanya vertical-align:middle;
danvertical-align:top;
, tetapi tidak ada perubahan.
HTML:
<div>
<a></a><a></a>
<span>Some text</span>
</div>
CSS:
a {
background-color:#FFF;
width:20px;
height:20px;
display:inline-block;
border:solid black 1px;
}
div {
background:yellow;
vertical-align:middle;
}
span {
background:red;
}
HASIL:
html
css
vertical-alignment
Yarin
sumber
sumber
<a>
elemen mengandung beberapa teks di dalamnya melihat tautan iniJawaban:
vertical-align
berlaku untuk elemen yang diluruskan, bukan elemen induknya. Untuk menyelaraskan secara vertikal anak-anak div, lakukan ini sebagai gantinya:Lihat: http://jsfiddle.net/dfmx123/TFPx8/1186/
CATATAN :
vertical-align
relatif terhadap baris teks saat ini, bukan ketinggian penuh dari indukdiv
. Jika Anda ingin orang tuadiv
menjadi lebih tinggi dan masih memiliki unsur-unsur vertikal terpusat, mengaturdiv
'sline-height
properti bukan nyaheight
. Ikuti tautan jsfiddle di atas untuk contoh.sumber
div
.vertical-align
relatif terhadap baris teks saat ini, bukan elemen induk. Untuk membuat ini berfungsi seperti yang Anda inginkan, atur divline-height
bukan miliknyaheight
.Berikan
vertical-align:top;
dia
&span
. Seperti ini:Lihat ini http://jsfiddle.net/TFPx8/10/
sumber
Cukup mengambang kedua elemen yang tersisa mencapai hasil yang sama.
sumber
inline-block
adalah satu-satunya solusi.Untuk memperbaiki posisi
inline-block
item, gunakan atas dan kiri:Terima kasih CSS-Trik !
sumber
translate
itu juga mungkin.