首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >边框长度是否小于div宽度?

边框长度是否小于div宽度?
EN

Stack Overflow用户
提问于 2011-12-20 17:02:38
回答 13查看 292K关注 0票数 133

我有以下代码

代码语言:javascript
复制
div {
   width:200px;
   border-bottom:1px solid magenta;
   height:50px;   
}

div的宽度是200px,所以边框底部也是200px,但是如果我只想要100px的边框底部,而不改变div宽度,我应该怎么做?

EN

回答 13

Stack Overflow用户

回答已采纳

发布于 2011-12-20 17:16:35

您可以使用伪元素。例如。

代码语言:javascript
复制
div {
  width   : 200px;
  height  : 50px;   
  position: relative;
  z-index : 1;
  background: #eee;
}

div:before {
  content : "";
  position: absolute;
  left    : 0;
  bottom  : 0;
  height  : 1px;
  width   : 50%;  /* or 100px */
  border-bottom:1px solid magenta;
}
代码语言:javascript
复制
<div>Item 1</div>
<div>Item 2</div>

不需要使用额外的标记用于表示目的。:after也是从IE8支持的。

编辑:

如果需要右对齐的边框,只需用right: 0更改left: 0即可

如果需要一个居中对齐的边框,只需设置left: 50px;

票数 259
EN

Stack Overflow用户

发布于 2014-11-06 01:41:56

另一种方法(在现代浏览器中)是使用负扩散框阴影。查看更新后的小提琴:http://jsfiddle.net/WuZat/290/

代码语言:javascript
复制
box-shadow: 0px 24px 3px -24px magenta;

我认为最安全和最兼容的方式是上面公认的答案。我只是想分享另一种技巧。

票数 45
EN

Stack Overflow用户

发布于 2016-03-23 13:33:05

我在h3标签下添加了行,如下所示

代码语言:javascript
复制
<h3 class="home_title">Your title here</h3> 
.home_title{
    display:block;
}
.home_title:after {
    display:block;
    clear:both;
    content : "";
    position: relative;
    left    : 0;
    bottom  : 0;
    max-width:250px;
    height  : 1px;
    width   : 50%;  /* or 100px */
    border-bottom:1px solid #e2000f;
    margin:0 auto;
    padding:4px 0px;
}
票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8572952

复制
相关文章

相似问题

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