html - 3个div在一个容器中

标签 html css position

<分区>

首先我得说,我没有找到任何答案。如果重复,请原谅我并指出我的正确之处。

我正在尝试创建一个内部包含三个 div 的 div。中心 div 应该有文本,侧面 div 应该有一条垂直居中的线,如下所示:

enter image description here

这是我目前的代码:

HTML:

<div className="container">
  <div class="line"><hr/></div>
  <div class="text">My Text</div>
  <div class="line"><hr/></div>
</div>

CSS:

.container {
  .text {
    font-size: 16px;
    text-transform: uppercase;
    color: red;
    display: inline-block;
  }

  .line {
    display: inline-block;
  }
}

我的问题是我根本看不到线条,我的文本位于左侧。我尝试了 margin: auto; 但这对我没有帮助。有人可以帮忙吗?

我有一个先决条件,我不能使用 flexboxes。

最佳答案

您可以使用 pseudoelements 而不是 hr 来实现此布局。

例子:

.container {
  text-align: center;
  position: relative;
}

.container:before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  background: grey;
  top: 50%;
  transform: translateY(-50%);
}

.text {
  font-size: 16px;
  text-transform: uppercase;
  color: red;
  margin: 0 auto;
  display: inline-block;
  background: white;
  position: relative;
  /* add left and right padding if needed */
  padding: 0 1em;
}
<div class="container">
  <div class="text">My Text</div>
</div>

关于html - 3个div在一个容器中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47078118/

上一篇:jquery - 使用 jQuery.css 在 Internet Explorer 中获取值

下一篇:CSS模仿一个简单的条形图

相关文章:

HTML:父 block 底部的 anchor block 元素?

javascript - JQuery - 更改文本中字符串的颜色,忽略 <br> 之间

CSS 菜单 last-child z-index

html - CSS 理解绝对定位元素中的边距

html - CSS 和 HTML 间距问题

javascript - 在事件冒泡阶段删除祖先

python - 使用django加载CSS返回404

javascript - 如何使用 Javascript 添加两个范围 slider 并在文本框中打印值?

html - 相同大小的列,其中一个可能滚动

c - SDL指定窗口大小和位置