我尝试使用文本输入和文本区域创建一个表单,其中标签应位于左侧,宽度为 200 像素,输入应位于右侧,使用所有可用空间。
我以这种方式列出了一个定义列表,它可以为术语提供 200 像素的宽度并将其向左浮动,并为定义提供 200 像素的左侧边距。这足以使定义使用所有可用的宽度。在这里查看:http: //jsfiddle.net/jmuheim/kjf8f/
现在我没有成功地告诉我的文本输入和文本区域以相同的方式运行。我尝试了宽度:100%,但它太宽了,因为它的边距为 200 像素。
label {
display: block;
margin: 0;
background-color: green;
float: left;
clear: left;
width: 200px;
}
input[type="text"], textarea {
display: block;
margin: 4px 0 4px 200px;
background-color: red;
}
http://jsfiddle.net/jmuheim/WWWs3/
输入字段顶部的“边距”来自哪里?textarea没有这个。是因为 textarea 是一个容器标签,而 input 不是吗?有没有办法解决这个问题?我宁愿不需要任何辅助标记,例如额外的 span、div 等。
将标签和文本输入/区域简单地放入自己的定义列表中并给它们都设置 100% 的宽度是否合适?这是鼓励标记,将表单输入放入定义列表吗?
非常感谢任何帮助。