2012-08-06 51 views
2
  • 我有兩個div
  • 一固定寬度的20像素;
  • 我想第二個div取其父容器的所有可用剩餘寬度
  • 我不知道父容器的px中的寬度。我有'%s'

我該如何做到這一點。請幫忙。Resonsive佈局兩個div一個具有固定長度的連續

+0

只是給第二個div寬度自動 – coolguy 2012-08-06 03:12:22

+0

對於第二個div,如果我給自其無法正常工作,如果我給100%我得到的水平滾動條 – 2012-08-06 03:17:18

+0

嘗試'寬度:自動;'並添加margin-sideOfFixedDiv:21px; – 2012-08-06 03:19:21

回答

0

你不需要javascript來做到這一點,也不需要像其他人一樣張貼;讓這個傢伙需要什麼樣的方式過於複雜:

HTML

<div id='wrapper'> 
    <div id='first'/> 
     &nbsp; 
    </div> 
    <div id='second'/> 
     second 
    </div>  
</div>  

CSS

#first { 
    width: 20px; 
    float: left; 
} 

的非浮動的div將承擔頁面寬度的其餘部分。

http://jsfiddle.net/thundercracker/MpPLr/28/

+0

在小提琴或應用它時你的網頁?什麼瀏覽器? – 2012-08-06 06:29:19

+0

你能複製你的代碼導致horz滾動js小提琴嗎? – 2012-08-06 06:37:51

+0

你的小提琴的作品。當我在小提琴中編寫我的代碼時,它可以工作。沒有水平滾動。但是,在我的FF中,它打破了。我會研究更多。請檢查我的更新,直到明天。我一定會更新。 – 2012-08-06 06:50:00

3

製作第二個div的寬度100%auto並通過其邊距移除第一個div的寬度。工作示例:http://jsfiddle.net/dAryP/

+0

快速的問題:不是100%的意思是「100%寬度的父母」?...所以它會在顯示時間變成100%+ 20px寬度? – 2012-08-06 03:09:56

+0

對於第二格,如果我給汽車它不起作用,如果我給100%,我會得到水平滾動條 – 2012-08-06 03:16:14

+0

你說得對,對不起。儘管如此:將第一個div放在第二個div內。與此同時,我會尋找一種僅限CSS的方法。 – Kwon 2012-08-06 03:21:28

2

試試這個:

HTML:

<div id='wrapper'> 
    <div id='first'/> 
     first 
    </div> 
    <div id='second'/> 
     second 
    </div>  
</div> 

CSS:

#first { 
    width: 20px; 
    height:50px; // height is set for test 
    background-color: red  
} 

#second { 
    height:50px; 
    background-color: blue; 
} 

#wrapper div { 
    float:left 
} 

JS:

$(window).resize(function(){ 
    var r = $('#wrapper').width() - 20; 
    $('#second').width(r) 
}).resize() 

DEMO

+1

代碼規則,您不必在4個操作系統,7個瀏覽器中使用css可視化驗證(並修復)您的設計。但我肯定會有興趣看到一個跨瀏覽器的css解決方案,如果它存在:) – Ekim 2012-08-06 03:24:30

+0

通過代碼建議這樣做嗎?這是一個正確的方法/答案?...從專家我尋找一些反饋意見*新* – 2012-08-06 03:25:45

+0

@gauravjain這取決於,如果父元素的寬度是固定的,您可以設置固定寬度,這種解決方案適用於每個瀏覽器,我用作爲問題的jQuery有一個標籤。 – undefined 2012-08-06 03:32:20

相關問題