布局divs在css中,如HTML表格中的表格单元格
今天又一次我偶然发现了一个我总是用css布局的问题。 我想在一个水平行中有5个div。 比方说,他们的宽度应该是:
- 1:60 px,
- 2:30%,
- 3:40px,
- 4:*
- 5:100px
其中*代表“填补剩余空间”。 在过去,这是我们铺设宽度表的方式。 现在由于可访问性原因,html表被禁止布局。 这只是一个例子。 我正在寻找一般的解决方案。
有人知道一个生成器,一个轻量级的 JavaScript解决方案(可以是一个jQuery插件),一个教程,一本书或一个魔术师,它可以帮助我现在和永远解决这个问题吗?
尽管基于javascript的解决方案是可能的,但是非脚本解决方案将是首选。
你可以使用display:table
来创建这个效果,我做了一个快速的小提琴
这使得单个div
的行为像表格单元格,而该section
是表格,我使用了一个部分只是为了拥有更清晰的代码, div
也可以工作。
如果窗口大小太小,您会注意到表格单元格比指定的小,这是因为表格的默认行为。 要解决这个问题,只需添加一个最小宽度(与宽度相同的值)
http://jsfiddle.net/lnplnp/bFrmD/
#div1 { width: 60px; } #div2 { width: 30%; } #div3 { width: 40px; } #div4 { } #div5 { width: 100px; } .layout { display:table; } .cell { display: table-cell; }
DIV LIKE TABLE 1 2 3 4 5
交叉你的手指! 有了最近的broswers,你现在可以做到!