css - 无法删除 float Div 的边框重叠

标签 css

<分区>


关闭 7 年前

我有以下 Code ,我试图从 div 的右侧和底部删除重叠的边框。请帮忙

HTML

<div class="lc">
  <ol>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
  <li>1</li>
</ol>  
</div>

CSS

.lc:after, .lc:before {
  display : table;
  content : "";
}

.lc:after {
  clear :both;
}

.lc {
  border: 1px solid #000;
  padding-right : -1px;
}
ol li {
  list-style : none;
  display : block;
  box-sizing : border-box;
  border-right : 1px solid #000;
  border-bottom : 1px solid #000;
  float :left;
  width : 10%;
  padding : 20px;

}

ol {
  margin :0;
  padding : 0;

}

我不想使用表格布局来完成此操作。我尝试了边框调整的所有排列和组合,但没有结果。

最佳答案

/* you can use this method i have removed the border from 
.lc class and added a pseudo element for ol with the now the border 
is over the border of li*/

.lc:after,
.lc:before {
  display: table;
  content: "";
}
.lc:after {
  clear: both;
}
.lc {} ol li {
  list-style: none;
  display: block;
  box-sizing: border-box;
  border-bottom: 1px solid #000;
  float: left;
  width: 10%;
  padding: 20px;
  border-right: 1px solid #000;
}
/* added float left to clear float of children 
and position relative for the pseudo element
*/
ol {
  position: relative;
  float: left;
}
/* below is the pseudo element*/
ol:after {
  content: '';
  position: absolute;
  top: 0px;
  left: 0px;
  bottom: 0px;
  right: 0px;
  border: 1px solid #000;
}
ol {
  margin: 0;
  padding: 0;
}
<div class="lc">
  <ol>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
  </ol>
</div>

关于css - 无法删除 float Div 的边框重叠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33972986/

上一篇:html - Prestashop 社交栏通讯颜色

下一篇:php - 创建 child 主题。 "Warning: file_get_contents9():failed to open stream: No such file or directory"错误

相关文章:

jquery - 如何对单选按钮进行分组

css - Google PageSpeed Insights - 渲染阻塞 CSS 不一致

hover - 悬停时 anchor 元素不会更改为内联

javascript - calc函数中的100%是什么

css - 什么是移动网站的好的字体大小调整方法?

html - 在 iPhone 上,具有 "datepicker"类的输入元素不会跨越整个列宽

html - 容器宽度与移动设备上的视口(viewport)宽度不匹配

javascript - UL 标签不显示与 OL 相同的 css

django - 覆盖并禁用 Django admin CSS .dashboard .module table tr

javascript - 在移动设备或桌面导航栏时显示汉堡菜单