我想我居中的div元素(PureCSS)建立這樣一個電網(100%的寬度和高度,沒有滾動條):PureCSS垂直中心/中間的div元素
現在我需要將所有元素垂直和水平居中對齊。
這是我的HTML代碼:
<div class="pure-g" style="height:100%;">
<div class="pure-u-1-5" style="height:90%;">
<div class="pure-g" style="height:50%;">
<div class="pure-u-1-1 visible"><img src="img/logo.png" alt="Logo" style="width:100%;"></div>
<div class="pure-u-1-1 visible"><img src="img/ad.png" alt="AD" style="width:100%;"></div>
</div>
</div>
<div class="pure-u-4-5" style="height:90%;">
<div class="pure-g" style="height:100%;">
<div class="pure-u-1-1" style="height:20%;">
<div class="pure-g" style="height:100%;">
<div class="pure-u-1-6 news"><p>PIC</p></div>
<div class="pure-u-1-3 news"><p>TITLE</p></div>
<div class="pure-u-5-12 news"><p>DESCRIPTION</p></div>
<div class="pure-u-1-12 news"><p>ID</p></div>
</div>
</div>
<div class="pure-u-1-1" style="height:20%;">
<div class="pure-g" style="height:100%;">
<div class="pure-u-1-6 news"><p>PIC</p></div>
<div class="pure-u-1-3 news"><p>TITLE</p></div>
<div class="pure-u-5-12 news"><p>DESCRIPTION</p></div>
<div class="pure-u-1-12 news"><p>ID</p></div>
</div>
</div>
<div class="pure-u-1-1" style="height:20%;">
<div class="pure-g" style="height:100%;">
<div class="pure-u-1-6 news"><p>PIC</p></div>
<div class="pure-u-1-3 news"><p>TITLE</p></div>
<div class="pure-u-5-12 news"><p>DESCRIPTION</p></div>
<div class="pure-u-1-12 news"><p>ID</p></div>
</div>
</div>
<div class="pure-u-1-1" style="height:20%;">
<div class="pure-g" style="height:100%;">
<div class="pure-u-1-6 news"><p>PIC</p></div>
<div class="pure-u-1-3 news"><p>TITLE</p></div>
<div class="pure-u-5-12 news"><p>DESCRIPTION</p></div>
<div class="pure-u-1-12 news"><p>ID</p></div>
</div>
</div>
<div class="pure-u-1-1" style="height:20%;">
<div class="pure-g" style="height:100%;">
<div class="pure-u-1-6 news"><p>PIC</p></div>
<div class="pure-u-1-3 news"><p>TITLE</p></div>
<div class="pure-u-5-12 news"><p>DESCRIPTION</p></div>
<div class="pure-u-1-12 news"><p>ID</p></div>
</div>
</div>
</div>
</div>
<div class="pure-u-1-1 marquee">NEWSTICKER (jQuery marquee)</div>
</div>
這裏是我的CSS:
*{font-family:'Raleway', sans-serif;}
h1, h2, h3, p {color:#fff;}
body, html {
overflow:hidden;
height: 100%;
padding:0px;
}
div {
/*
border:1px solid;
margin:-1px;
*/
}
.news {
height:100%;
position:relative;
background:#444; background:rgba(0,0,0,.5);
margin:0px 0px 0px 0px;
border-radius:0px;
margin-bottom:0px;
}
.visible {
height:100%;
position:relative;
background:#444; background:rgba(0,0,0,.5);
margin:0px 0px 0px 0px;
border-radius:0px;
margin-bottom:0px;
}
.news p {
text-align: center;
vertical-align: middle;
margin:15px;
height:100%;
}
.marquee {
height:100%;
position:relative;
background:#444; background:rgba(0,0,0,.5);
margin:0px 0px 0px 0px;
padding:0px;
border-radius:0px;
margin-bottom:0px;
font-family:'Raleway', sans-serif;
color:#fff;
}
結果是這樣的:
我讀了一些線程這個問題,但沒有他們似乎爲我工作讓div元素垂直居中。 我也很高興,如果你們中的任何一位發現一些代碼改進,因爲這是我第一次構建這樣的網格。
在此先感謝
您的'.news p'對於高度爲100%的父級高度爲100%..使用PX高度並將線高分配爲相同。 – Pogrindis 2015-02-05 13:44:44
嗨@Pogrindis謝謝你,你是對的。但改變它並不能解決我最初的問題,這些項目仍然位於最前面。高度必須以百分比表示(右側:90%,內部5x20%),以儘可能快地響應 – Philipp 2015-02-05 14:04:30
Isnt pureCSS已經對內置定義進行響應了嗎? – Pogrindis 2015-02-05 14:10:50