首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >有没有办法限制边框长度?

有没有办法限制边框长度?
EN

Stack Overflow用户
提问于 2010-11-09 15:56:25
回答 7查看 598.8K关注 0票数 255

有没有办法限制边框的长度。我有一个有下边框的<div>,但我想在<div>的左侧添加一个仅向上延伸一半的边框。

有没有办法做到这一点而不在页面上添加额外的元素?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2010-11-10 19:25:53

希望这能有所帮助:

代码语言:javascript
运行
复制
#mainDiv {
  height: 100px;
  width: 80px;
  position: relative;
  border-bottom: 2px solid #f51c40;
  background: #3beadc;
}

#borderLeft {
  border-left: 2px solid #f51c40;
  position: absolute;
  top: 50%;
  bottom: 0;
}
代码语言:javascript
运行
复制
<div id="mainDiv">
  <div id="borderLeft"></div>
</div>

票数 204
EN

Stack Overflow用户

发布于 2012-10-09 21:42:36

CSS生成的内容可以为您解决此问题:

代码语言:javascript
运行
复制
div {
  position: relative;
}


/* Main div for border to extend to 50% from bottom left corner */

div:after {
  content: "";
  background: black;
  position: absolute;
  bottom: 0;
  left: 0;
  height: 50%;
  width: 1px;
}
代码语言:javascript
运行
复制
<div>Lorem Ipsum</div>

(注意-为了呈现伪元素,content: "";声明是必需的)

票数 294
EN

Stack Overflow用户

发布于 2013-05-18 23:29:23

The ::after pseudo-element rocks :)

如果你玩一点,你甚至可以设置你调整大小的边框元素居中显示,或者只有当它旁边有另一个元素时才显示(就像在菜单中一样)。下面是一个带有菜单的示例:

代码语言:javascript
运行
复制
#menu > ul > li {
    position: relative;
    float: left;
    padding: 0 10px;
}

#menu > ul > li + li::after {
    content:"";
    background: #ccc;
    position: absolute;
    bottom: 25%;
    left: 0;
    height: 50%;
    width: 1px;
}

代码语言:javascript
运行
复制
#menu > ul > li {
  position: relative;
  float: left;
  padding: 0 10px;
  list-style: none;
}
#menu > ul > li + li::after {
  content: "";
  background: #ccc;
  position: absolute;
  bottom: 25%;
  left: 0;
  height: 50%;
  width: 1px;
}
代码语言:javascript
运行
复制
<div id="menu">
  <ul>
    <li>Foo</li>
    <li>Bar</li>
    <li>Baz</li>
  </ul>
</div>

票数 43
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4131490

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档