我有div
內的文本與message
類,我想給div
對於移動垂直中心於母公司div
與banner
類。下邊距不工作,超越父DIV
請參考這裏的的jsfiddle - https://jsfiddle.net/1rbhuwfs/
每當我嘗試設置margin-bottom
,它超越了父div
下去,我不明白爲什麼越來越多。母公司div
上有display: block
。
我更喜歡在我的代碼中沒有任何position: absolute
。
在此先感謝。
我有div
內的文本與message
類,我想給div
對於移動垂直中心於母公司div
與banner
類。下邊距不工作,超越父DIV
請參考這裏的的jsfiddle - https://jsfiddle.net/1rbhuwfs/
每當我嘗試設置margin-bottom
,它超越了父div
下去,我不明白爲什麼越來越多。母公司div
上有display: block
。
我更喜歡在我的代碼中沒有任何position: absolute
。
在此先感謝。
檢查以下片斷中,我已經加入
.banner > div {
vertical-align:middle;
}
和刪除margin-bottom: 40px;
形式.message
。尊重圖像和文本的DIV保證金底 - - 垂直居中不position: absolute
或使用表
.banner {
height: 100px;
background-color:#4d1242;
margin: 0 1px;
display: block;
}
.banner > div {
vertical-align:middle;
}
.img-1-holder {
display: inline-block;
margin-left: 15px;
}
.img1 {
height: 70px;
margin-bottom: 15px;
}
.img-2-holder {
display: inline-block;
}
.img2 {
height: 100px;
}
.message {
display: inline-block;
}
<div class="banner">
<div class="img-1-holder">
<img class="img1" src="http://free-smiley-faces.de/images/free-animated-angry-smiley-animiert-wuetend_02_70x70.gif">
</div>
<div class="message">
Some random text here
</div>
<div class="img-2-holder">
<img class="img2" src="http://www.free-smiley-faces.de/Smiley-Faces/www.free-smiley-faces.de_smiley-face_03_100x100.gif">
</div>
</div>
一種方法是使用Flexbox的:
添加/更改此:
.banner {
display: flex;
align-items: center;
}
檢查jsfiddle,將父母設爲display:table
,子女設爲display: table-cell and vertical-align: middle
。
可以使用Flexbox的fiddle
.banner {
height: 100px;
background-color:#4d1242;
margin: 0 1px;
display: flex;
justify-content: center;
align-items: center;
}
在這種情況下,你可以去除
.img1 {
height: 70px;
}
.message {
display: inline-block;
}
你可以參照這個太邊緣。 https://www.w3.org/Style/Examples/007/center.en.html
解決方案建議在這個鏈接一般工作! :d
您可以嘗試包括普通類的假設img-inline
內聯CSS屬性和類中的.IMG-1持有人管理其他的CSS屬性,.IMG-2持有者和.message
這裏一個示例代碼給你。你可以在你的jsfiddle中試試它。對不起,我不在這裏發佈小提琴鏈接。
HTML代碼
<div class="banner">
<div class="img-inline img-1-holder">
<img class="img1" src="http://free-smiley-faces.de/images/free-animated-angry-smiley-animiert-wuetend_02_70x70.gif">
</div>
<div class="img-inline message">
Some random text here
</div>
<div class="img-inline img-2-holder">
<img class="img2" src="http://www.free-smiley-faces.de/Smiley-Faces/www.free-smiley-faces.de_smiley-face_03_100x100.gif">
</div>
</div>
CSS代碼:
.banner {
height: 100px;
background-color:#4d1242;
margin: 0 1px;
display: block;
}
.img-1-holder {
margin-left: 15px;
}
.img1 {
height: 70px;
margin-bottom: 15px;
}
.img-2-holder {
margin-left: 15px;
}
.img2 {
height: 100px;
}
.img-inline {
display: inline-block;
vertical-align: middle;
}
希望這有助於:)