2012-04-24 69 views
1

我不確定這是否可以在HTML CSS中明白。3格,一個固定寬度

我在一行中有3個div 第二個div必須佔用200px的寬度,而第一個div必須佔用剩餘的寬度。

http://jsfiddle.net/Garav/gk9t3/

其餘兩個div被固定在小提琴100px的。有沒有辦法讓他們同時在兩邊填充剩餘的屏幕,這樣第二個div總是保持在中心?

注意:父div的寬度不固定。

+0

你想在邊際上的div包含的東西,或者正好填補了空的空間,中間的空間。如果中間div在100%寬度的另一個div內並居中,它會好嗎? – gabitzish 2012-04-24 11:44:28

+0

中間一個居中,其餘2個div基本上會有一個背景重複圖像佔用剩餘空間 – 2012-04-24 11:45:44

+0

ok。我會發布解決方案。檢查它 – gabitzish 2012-04-24 11:47:05

回答

1

只需使用margin:0 auto;無需保證金的div:http://jsfiddle.net/gk9t3/3/

+0

我需要3個div ..其餘兩個將有背景重複圖像.. – 2012-04-24 11:52:38

+0

您可以將背景圖像添加到父div。 – Paul 2012-04-24 11:58:20

+0

假設頁面有一個背景..和中心圖像有透明部分的地方..所以顯然你不希望「.fill-remaining」背景在中心圖像的透明部分下可見 – 2012-04-24 12:00:02

0

我在另一個div中添加了中間div,並將其居中。看看這是否符合你的要求:http://jsfiddle.net/gk9t3/1/

+0

200px不一定總是20%..認爲ABT移動設備 – 2012-04-24 11:49:58

+0

您可以在CSS部分設置所需的寬度爲.image-placeholder。它可以是200px,或20%,或多少你想:) – gabitzish 2012-04-24 11:51:35

+0

多數民衆贊成多多少少我不想單獨設置爲移動,墊,桌面 – 2012-04-24 11:56:49

3

證明:http://jsfiddle.net/5Br5A/

CSS

.image-placeholder{ 
    background: #0f0; 
    width: 200px; 
    height : 200px; 
    clear:none; 
    float: left; 
} 
.fill-remaining { 
    height:200px; 
    width:50%; 
    clear:none; 
} 
.fill-remaining.left { 
    background:#f00; 
    float: left; 
    margin-right:-100px; 
} 
.fill-remaining.left>div { 
    padding-right: 100px; 
} 
.fill-remaining.right { 
    background:#00f; 
    float: right; 
    margin-left:-100px; 
} 
.fill-remaining.right>div { 
    padding-left: 100px; 
}​ 

HTML

<div class="fill-remaining left"> 
</div> 
<div class="fill-remaining right"> 
</div> 
<div class="image-placeholder"> 
</div> 
+0

很酷的解決方案兄弟..現在我必須在-ve邊距和表格屬性之間進行權衡 – 2012-04-24 12:02:15

+0

如果您將內容用於側邊欄,請進行更新。 – iambriansreed 2012-04-24 12:13:12