我有以下结构:
<div class="form-item">
<label>Label</label>
<input type="text" value="" size="23">
<div class="description">
<div class="msg">*Some description</div>
<div class="msg">Error</div>
</div>
</div>
有许多表单项。我需要标签和描述边距与父级(表单项)一起折叠,并且两个表单项边距不得折叠。
为什么我需要那个?好吧,我会使用填充,但标签和描述是可选的,因此它们必须具有必须与父级折叠的边距。此外,描述可能包含零(隐藏)到许多必须以描述边距折叠的消息,并且如果所有消息都被隐藏,则整个字段必须是不可见的。
Ps 我确实需要 IE7 支持 :)
编辑 基本 css:
.form-item{
margin: 7px 0 10px;
}
.form-item legend{
margin: 5px 0;
}
.form-item .description{
margin: 2px;
}
.description .msg{
margin: 1px 0;
}
总结一下:
- 两个表单项之间的间距:17px(边距不折叠);
- 顶部表单项边距:7px(5px 与 7px 折叠);
- 底部表单项边距:10px(2px 与 10px 折叠);