2014-01-28 67 views
0

我使用margin: 0 auto內居中,但是按鈕似乎不迴應這一點,裏面的div沒有中心。按鈕沒有父DIV

這裏是jsFiddle

HTML:

<div class="ou"> 
    <div class="con"> 
     <button>some</button> 
    </div> 
</div> 

CSS:

.ou{ 
    width: 33%; 
    height: 26px; 
    background: blue; 
} 

.con{ 
    height: 100%; 
    width: 100%; 
} 


.con button{ 
    width: 50px; 
    background: red; 
    margin: 0 auto; 
} 

回答

2

添加文本對齊:中心;去。在這裏:

.ou{ 
    width: 33%; 
    height: 26px; 
    background: blue; 
    text-align: center; 
} 

.con{ 
    height: 100%; 
    width: 100%; 
} 


.con button{ 
    width: 50px; 
    background: red; 
    margin: 0 auto; 
} 
+0

這兩個答案都很好,但我會用最快的一個去。 – skmasq

+1

順便說一句,'margin:0 auto'適用於塊元素,並且該按鈕是內聯元素。這就是爲什麼你必須用「文本對齊」將文本居中或者將「顯示:塊」添加到按鈕。 – ragol

1

要麼給 「display:block」 到

.con button{ 
    width: 50px; 
    background: red; 
    margin: 0 auto; 
    display:block; 
} 

小提琴:http://jsfiddle.net/4L3ug/1/

OR

給 「text-align:center;」 到:

.con{ 
    height: 100%; 
    width: 100%; 
    text-align:center; 
} 

小提琴:http://jsfiddle.net/4L3ug/2/

希望這應該幫助!

-1

最簡單的答案是不使用CSS。改爲使用HTML中的標籤。

<div class="ou"> 
    <div class="con"> 
     <center><button>some</button></center> 
    </div> 
</div> 
+0

這違反了關注點分離原則。請參閱以下內容:https://stackoverflow.com/questions/1798817/why-is-the-center-tag-deprecated-in-html –