首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >显示:表格和表格-单元

显示:表格和表格-单元
EN

Stack Overflow用户
提问于 2013-11-26 19:08:11
回答 2查看 124关注 0票数 0

我想做一个如下的布局:

代码语言:javascript
复制
[___][_***______________________________________________]
[___][_***______________________________________________]
[___][_***______________________________________________]
[___][_***____________________________________][__][____]

没有星星的元素有固定的宽度,有星星的元素应该填满所有剩余的空间。

这是我想出来的标记:

html:

代码语言:javascript
复制
<div class="wrapper">
 <div class="label">text</div><input type="text" class="valueField"/>
 <div class="label">text</div><input type="text" class="valueField"/>
 <div class="label">text</div><input type="text" class="valueField"/><div class="label">text</div><input type="text" class="valueField" id="fixed_valueField"/>
</div>

css:

代码语言:javascript
复制
.wrapper { display:table; width:100%; }
.wrapper > * { display:table-cell; width:auto; }
.label { width:5%; }
#fixed_valueField { width:15%; }

但是在第三行,我的input元素并没有填满所有可用的空间:

代码语言:javascript
复制
[___][_***______________________________________________]
[___][_***______________________________________________]
[___][_***______________________________________________]
[___][_***________________][__][____]

如果有任何建议,我将不胜感激。

EN

回答 2

Stack Overflow用户

发布于 2013-11-26 19:19:41

将剩余的百分比添加到您的CSS中,并将重要的百分比添加到您的ID中以覆盖:

代码语言:javascript
复制
.valueField { width: 80%; }
#fixed_valueField { width: 15% !important; }

这应该是可行的

票数 0
EN

Stack Overflow用户

发布于 2013-11-26 19:51:35

实现目标的更聪明的方法是使用<label>标记而不是div标记,因为它提供了更好的表单元素流!

演示

HTML

代码语言:javascript
复制
 <div class="wrapper">
      <label for="">text<input type="text" class="valueField"/></label> <br >
      <label for="">text<input type="text" class="valueField"/></label> <br >
      <label for="">text<input type="text" class="valueField"/></label> <br >
      <label for="">text<input type="text" class="valueField"/></label> <br >
      <label for="">text<input type="text" class="valueField"/></label> <br >
      <label for="">text<input type="text" class="span6"/><input type="text" class="span2"/><input type="text" class="span2"/></label> <br >
</div>

CSS

代码语言:javascript
复制
 label { width:100%;}
input {width:80%;margin-left:2%;border:1px solid #CCC}
.span6{width:45%} /*css for last row inputs*/
.span2{width:15%} /*css for last row inputs*/
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20215400

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档