前言:我通常不是UI用戶,所以如果我對CSS有嚴重的誤解,請原諒我。請知道這個問題的是以下幾個小時的研究/敲我的頭靠在牆上:)在兩個固定寬度的元素之間將未知寬度拉伸元素
基本上我想要做的就是伸展的未知號元素融入未知寬度的空間,在一個已知的寬度的兩個元素之間,所有內部都是一個寬度可變的容器,位於頁面的中心。
我意識到多麼瘋狂,所有聽起來我打字,所以讓我嘗試做這個圖形:
html
|-------------------------------------------------------------------------|
| #container |
| |-----------------------------------------------------------------| |
| |#header | |
| ||---------------------------------------------------------------|| |
| || #logo | #menu | #social || |
| || | |---| |---| |---| |---| | || |
| || | | A | | B | | C | ... ... ... | N | | || |
| || | |---| |---| |---| |---| | || |
| ||---------------------------------------------------------------|| |
| | | |
| |#body | |
| ||---------------------------------------------------------------|| |
| || || |
| ||---------------------------------------------------------------|| |
|-------------------------------------------------------------------------|
其中:
#container
爲中心,並佔據了80%文檔的寬度#logo
,#menu
和#social
各自包含在<div/>
s#logo
和#social
已知寬度;#menu
不| A |
...| N |
不到<ul/>
的HTML看起來像一個未知的數量<li/>
元素:
<body>
<div id="container">
<div id="header">
<div id="logo">Logo here</div>
<div id="nav">
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">Home</a></li>
<li><a href="#">Home</a></li>
</ul>
</div>
<div id="social"><a href="#">Link</a><a href="#">Link</a></div>
</div>
<div id="body"> </div>
</div>
</body>
嘗試,因爲我可能,我不能得到A..N
菜單項目可以穿過#logo
和#social
元素之間的其餘空間。他們最終會一起擦肩而過,或者他們佔據了#container
分配給他們的80%的100%。
我已經嘗試了一些事情:
我不能/不會考慮做的事情:
- 房屋的菜單項在
<table/>
- 任何類型的JavaScript方式
- 的使用CSS
calc()
功能
而最後一個音符:我不關心這些菜單項不在分配給他們的空間中有足夠的空間。但是,如果它們溢出,我預計它們會溢出到#menu
內的另一行(即在A
菜單項下)。
必須有一個純粹的CSS解決方案...這是什麼?
我從來沒有想過要使用表格佈局顯示整個標題。這個解釋非常有意義......非常感謝!你是一個救星! –