CSS边界线消失问题的详细解决方案
让我们看一下下面的图表。我们经常在一些导航栏中看到每一行最后一行的右边框消失,以及如何在所有浏览器中方便而优雅地实现它们。如果你不需要兼容IE8,然后用CSS3新的选择器是一个好办法。
使用/选择器选择3N元素去除边框
李:nth-child(3N){
边界权:无;
}
当然,如果这个数字没有太大的确定性,就需要从右边删除一个特定的类,或者表的使用有点乏味,但是可以实现。
但不够优雅。
这里有一个小技巧,通过添加一个反向边框和添加一个负边距。
首先,我们假设我们的UL结构如下:
测试
消失
边界线
赖特
边界线
消失
测试
如图所示,假设每一行有3里,每李是100px,和我们的UL认证和UL容器宽度设置为300px。
最重要的是,每个LI设置一个左边框而不是右边框:
UL集装箱,
UL {
宽度:300px;
}
李{
浮点数:左;
宽度:99px;
左边界:1px solid # 999;
}
我们将得到以下结果:
接下来,我们设置容器UL容器溢出:隐藏和移动UL左像素margin-left: - 1px。
在这个UL的所有边框中,第一列因为左移像素而溢出:隐藏消失,造成右边框看起来像左下边框一样,只是一个分心:
UL容器{
溢出:隐藏;
}
UL {
margin-left: - 1px;
}
效果图如图开头所示。
这种方法可以适应所有不同的李数和不同行数的情况,因为每一个新添加的李生成左边框,最后一个LI元素被分离,但它看起来像最后一个LI元素的右边框。
总结
以上就是本文的全部内容。我希望这篇文章的内容能帮助你学习或工作。如果有任何疑问,你可以留言。