2012-06-01 5 views
11

CSS (3) için bir merkez kapsayıcı div genişliğini float:left div ve float:right div arasındaki otomatik olarak ayarlayabilmek için bir yol arıyorum.CSS otomatik taşıma konteyneri arasındaki boşluksuz: sol ve şamandıra: sağdan boşluklar

Merkez div ayrıca, google + 'ya benzer, min-width kümesine de sahip olmak zorundadır. Bu, merkez içeriğin sol gezinme düğmeleri ve sağ sohbet bölmesi arasında otomatik olarak yerleştirildiği yerdir. Ardından ekran genişliği belli bir noktayı geçtiğinde (javascript ile algılanır), sohbet bölmesi yerden tasarruf etmeyi en aza indirir. ,

#left{ float:left; width:200px; height:400px; border:1px solid #000; } 

#center{ float:left; width:auto; height:400px; border:1px solid red; } 

#right{ float:right; width:100px; height:400px; border:1px solid blue; } 

daha fazla bilgiye ihtiyaç varsa bana bildirin lütfen: Ayrıca http://jsfiddle.net/9vrby/

, burada css şimdi kullanıyorum kodudur:

İşte iş yapmak için etkin bir sahte-up ve yardım için şimdiden teşekkürler.

+0

Eh, oldukça kötü bir jquery sürümü ile geldi. http://jsfiddle.net/9vrby/3/ bu tür berbat (sıvı değil) ve benzeri. ama belki birileri ondan inşa edebilir. –

cevap

22

#center'da float: left bırakın ve overflow: hidden'u ekleyin. Ayrıca, #center'un HTML'de devam etmesi gerekiyor.

http://jsfiddle.net/thirtydot/9vrby/14/

Bu, tüm modern tarayıcılar ve hatta IE7 çalışır.

+0

güzel bir çözüm ve benim gerçek sitem ile iyi çalışıyor. – sadmicrowave

4

Tek bir numara şamandıralar kullanmak değil, göstermektir: tablo hücresi.

http://jsfiddle.net/9vrby/8/

HTML:

<div id='left'></div> 
<div id='center'></div> 
<div id='right'></div> 

CSS:

#left{ display:table-cell; min-width:200px; height:400px; border:1px solid #000; } 
#center{ display:table-cell; min-width:200px; width:100%; height:400px; border:1px solid red; } 
#right{ display:table-cell; min-width:100px; height:400px; border:1px solid blue; } 

Ama dikkat, bu yöntem aşağıda IE7 (ve çalışmaz, ama kim hala bok doğru destekler?). Ama belki de, IE7 gibi resmi olarak desteklemeyen tarayıcılar için CSS (3) kullanmanızı sağlayan CSS3Pie'a bakabilirsiniz. Bu yüzden belki de görüntülenir: tablo hücresi çalışır.

+0

CSS3 PIE, IE7'de "display: table" ile yardımcı olmaz. Yine de bir JavaScript düzeltmesi var: http://tanalin.com/en/projects/display-table-htc/ – thirtydot

İlgili konular