我将简单的样式应用于复杂的布局:
* {
border: 1px solid #eaeaea;
}
它可以工作,但会导致所有类型的附加边框。有没有办法在全球范围内删除或折叠其他边界,因为我不知道(也不能)知道div或其他元素会触及什么?
是否有一个jQuery插件会对所有元素应用简单边框,并考虑到这一要求?
我意识到明星是一张通配符,这是我所追求的效果,但我不希望边界加倍或加倍
当两个串联DIV的边界定义时 - 中心边框的宽度为2 - 我希望它实际重叠,因此它只渲染为1px而不是2 px。我不知道会有什么元素,所以手动应用样式或根据具体情况删除它们是不可接受的。
答案 0 :(得分:1)
你可以这样做:
* {
border: 1px solid #eaeaea;
}
.no-border {
border: none;
}
然后,将班级no-border
附加到不应有边框的所有元素上。
我认为默认情况下为所有元素设置边框并不是一个好主意,但这种技术可以为您提供所需的内容。
答案 1 :(得分:0)
*
表示全部,在您的css声明之后但在'之前使用!important
;'
或将课程应用于您希望成为的元素,并且仍然包含'!important'
答案 2 :(得分:0)
我猜你正在寻找避免元素并排有两个边界的总和,它们应该倒塌。
这是解决这个问题的一种方法。
div {
float: left;
width: 33%;
height: 100px;
border: 1px solid black;
}
div.row1 ~ div.row1 {
border-width: 1px 1px 1px 0;
}
div.row2 {
border-width: 0 1px 1px 1px;
}
div.row2 ~ div.row2 {
border-width: 0 1px 1px 0;
}

<div class="row1"></div>
<div class="row1"></div>
<div class="row1"></div>
<div class="row2"></div>
<div class="row2"></div>
<div class="row2"></div>
&#13;
使用table
border-collapse: collapse
本地支持折叠边框
.table {
display: table;
border-collapse: collapse;
width: 100%;
height: 200px;
}
.row {
display: table-row;
}
.cell {
display: table-cell;
border: 1px solid black;
}
&#13;
<div class="table">
<div class="row">
<div class="cell"></div>
<div class="cell"></div>
<div class="cell"></div>
</div>
<div class="row">
<div class="cell"></div>
<div class="cell"></div>
<div class="cell"></div>
</div>
</div>
&#13;
第三种方法是使用负余量
div {
float: left;
width: 33%;
height: 100px;
border: 1px solid black;
}
div.row1 ~ div.row1 {
margin-left: -1px;
}
div.row2 {
margin-top: -1px;
}
div.row2 ~ div.row2 {
margin-left: -1px;
}
&#13;
<div class="row1"></div>
<div class="row1"></div>
<div class="row1"></div>
<div class="row2"></div>
<div class="row2"></div>
<div class="row2"></div>
&#13;