2015-09-07 57 views
0
text-align: center; 
box-sizing: border-box; 
color: #fff; 
float: left; 
width: 50%; 
height: 65vh; 
padding-top: 14% 

這是我的CSS。我想要的是文字正好在中間,但它不起作用,因爲我的身高取決於屏幕高度。我該如何解決這個問題?垂直高度的CSS文本

+0

玩弄線高度。 – Lowkase

+0

'line-height:100px'(或你的身高值),並移除'padding-top','heigh'屬性。 – gmunkhbaatarmn

+0

但如果我做100px作爲行高,它不會響應? – Cooln

回答

0

您可以使用Flexbox佈局。

爲Flexbox的

很好的指導:https://css-tricks.com/snippets/css/a-guide-to-flexbox/

顯示:彎曲組佈局了flexbox佈局

證明內容:中心集文字水平中心

對齊項:中心將文字設置爲垂直中心

.container { 
 
    width: 150px; 
 
    height: 150px; 
 
    border: 3px solid black; 
 
    display: flex; 
 
    justify-content: center; 
 
    align-items: center; 
 
}
<div class="container"> 
 
    <p class="text">Some Text</p> 
 
</div>

+0

它工作完美。現在讓我們說,我使用的代碼(這完美的作品,謝謝),但我想在下面的另一個div上使用它。然後我有一個問題,因爲有不同的高度。 65vh和35vh。請幫忙! – Cooln

+0

@Cooln這兩個div如何放置?在彼此之上?一個在另一個內?如果你能分享一些HTML,會更好。 – tmvnty

0

你可以使用display:table-cell

.container { 
 
    width: 150px; 
 
    height: 65vh; 
 
    border: 3px solid black; 
 
    display: table-cell; 
 
    text-align: center; 
 
    vertical-align: middle; 
 
}
<div class="container"> 
 
    <p class="text">Some Text</p> 
 
</div>