2014-12-09 69 views
3

我希望能夠在一個fixed位置顯示DIV,並有其width適合的內容「inline-block的」,但每次我加一次DIV position: fixed;,div被計算爲display: block;,div變成全長。如何顯示有「固定」,並添加到它的CSS屬性

HTML

<div class='veil'></div> 

CSS

.veil{ 
    display: inline-block; 
    position: fixed; 
    top: 34%; 
    left: 0; 
    right: 0; 
    margin: 0 auto; 
    background-color: lavender; 
} 
+0

刪除'權:0;' – 2014-12-09 13:11:50

回答

4
每次我添加位置

:固定;,在div被計算顯示:塊;而div變成全長。

這不是display: block,這是position: fixed使格彈力相對於瀏覽器窗口,因爲你有left: 0right: 0您觀察此行爲DIV通吃窗口寬度。

根據您的HTML結構,您可以使用position: absolute來代替或在評論中指出(謝謝@Paulie_D)不要使用right: 0

+0

事實上,就刪除'right'屬性 - http://jsfiddle.net/vynn9k0e/ – 2014-12-09 13:12:24

+0

@Paulie_D如果你刪除'right'proprety,'div'仍然是'diplay:block'。 – Vucko 2014-12-09 13:14:47

+1

不......它沒有。它顯示爲inline-block ....至少它在小提琴中。它不會集中......如果這就是你的意思。 – 2014-12-09 13:16:01

1

只需添加另一個容器。 並分解它們之間的CSS矛盾。

HTML

<div class='container'><div class='veil'></div></div> 

CSS

.container 
{ 
    position: fixed; 
    top: 34%; 
    left: 0; 
    right: 0; 
} 
.veil 
{ 
    display: inline-block; 
    margin: 0 auto; 
    background-color: lavender; 
}