这种APP底部横线+文字该怎么布局?css

发布于 2022-09-12 13:03:25 字数 506 浏览 15 评论 0

image.png

如图所示

下面是我做的,但是宽度不好控制,设备宽度不一样显示也不一样,有好的解决方案嘛
image.png

<div class="state flex flex-y flex-x">
    <span class="line"></span>
    <p>用户须知</p>
    <span class="line"></span>
</div>
.state{
    color: #666;
    font-size: 14px;
}
.line{
    width: 35%;    
    height: 1px;
    background-color: #dedede;
}```

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

泪冰清 2022-09-19 13:03:25
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
  <style>
    .divider {
      color: #999;
      text-align: center;
    }
    .divider::before,
    .divider::after {
      content: '';
      display: inline-block;
      margin: 0 10px;
      width: 100px;
      height: 1px;
      background: currentColor;
      vertical-align: middle;
    }
  </style>
</head>
<body>
  <div class="divider">这是一个分割线</div>
</body>
</html>

上面这个如果考虑移动端宽度问题单位应该用rem,移动端这个应该是共识了。使用flex则可以不考虑宽度问题了,如下面这个:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
  <style>
    .divider {
      display: flex;
      align-items: center;
      color: #999;
      text-align: center;
      white-space: nowrap;
    }
    .divider::before,
    .divider::after {
      content: '';
      width: 50%;
      height: 1px;
      background: currentColor;
    }

    .text {
      padding: 0 1em;
      background: #fff;
    }
  </style>
</head>
<body>
  <div class="divider"><span class="text">这是一个分割线sdfdsfssdfs</span></div>
</body>
</html>
坏尐絯℡ 2022-09-19 13:03:25
<div class="box">
 <div class="line"></div>
 <div class="text">用户登录</div>
 <div class="line"></div>
</div>

.box{
 width:80%;
 margin:50px auto;
 color:#ccc;
 display: flex;
 align-items: center;
}
.text{
  padding:0 5px;
}
.line{
  border:1px solid #ccc;
  flex-grow: 1;
}

image

冰葑 2022-09-19 13:03:25
<div class="line">
  <span>内容</span>
</div>
    
.line {
    font-size: 14px;
    position: relative;
  }
  .line:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 1px;
    background: red;
  }
  .line span {
    padding: 0 10px;
    position: relative;
    z-index: 1;
    background: #fff;
  }
我最亲爱的 2022-09-19 13:03:25

image.png

<div class="state">
  <div class="text">用户须知</div>
</div>
.state{
  display: block;
  height: 1px;
  width: 100%;
  margin: 24px 0;
  background-color: #dcdfe6;
  position: relative;
}
.text{  
  background: #fff;
  margin: 0;
  position: absolute;
  background-color: #fff;
  padding: 0 20px;
  font-weight: 500;
  color: #303133;
  font-size: 14px;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
 }
琴流音 2022-09-19 13:03:25
<div style="padding-left: 10px; padding-right: 10px;position:relative;">
    <div style="background-color: #666; height: 1px;"></div>
    <label style="font-size: 14px; color: #666; background-color: #fff; padding: 0 10px; height:20px; position:absolute; margin-left: 50%; left: -40px; top: -10px">用户须知</label>
</div>
尽揽少女心 2022-09-19 13:03:25

我也来写个简单的方法

<div class="bottom">
    <div class="line"></div>
    <div class="name">用户须知</div>
    <div class="line"></div>
  </div>

.bottom {
  display: flex;
  justify-content: center;
  position: relative;
  align-items: center;
  
}
.name {
  background: #fff;
  padding: 0 10px;
  white-space: nowrap;
}

.line {
  content: '';
  width: 100%;
  height: 100%;
  border-bottom: 1px solid red;
}

image.png

image.png

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文