css - (CSS) 高度拉伸(stretch)与顶部 : 0 and bottom: 0 with Pseudo-Element?

标签 css height pseudo-element stretch

我正在使用 float: left;float: right; 在两个容器上进行两列布局。为了在视觉上将它们与容器分开,我想通过父容器中的伪元素在它们之间画一条垂直线。

我的代码:

.twocol {
  position: relative;
}

.twocol.divided:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  border-left: 2px dashed #000;
}

.leftcol {
  float: left;
  width: 50%;
  padding-right: 20px;
}

.rightcol {
  float: right;
  width: 50%;
  padding-left: 20px;
}

然后是 html:

<div class="twocol divided">
  <div class="leftcol">...</div>
  <div class="rightcol">...</div>
</div>

使用 top: 0;bottom: 0; 伪元素应该从父 .twocol 的顶部到底部画一条线。但是没有任何反应。

在 .twocol 内的附加 html 元素 div.divider 上使用与伪元素相同的规则效果很好并划清界线。这种技术对伪元素来说是不可能的,还是我错过了什么?

这里是jsfiddle.net/tw1vp2dg使用无效的伪元素和有效的 html 元素示例。

最佳答案

您的 .twocol:before 选择器有 display: table

display:block 或不同于table 的其他值添加到伪元素的样式中,或删除.twocol:before 选择器。

Example

关于css - (CSS) 高度拉伸(stretch)与顶部 : 0 and bottom: 0 with Pseudo-Element?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36165710/

相关文章:

html - CSS - 保持转换 :after element on target

javascript - 使用纯javascript将绝对定位元素放在窗口顶部

javascript - 将一个高度加到另一个高度上

css - 如何在我的 css 中设置默认的伪样式?

html - 无法将 div 内容定位到页面中心

html - 如何屏蔽矩形内的半圆并通过css屏蔽?

javascript - vbox 中的 ExtJs DataView 高度

c++ - 普通树 - 非二叉树 - 高度

css - 带有填充的伪元素 firefox 问题

javascript - 激活:focus when the page loads with Javascript