我有一盒社交媒体内容如下:
1 | 2 | 3
无论如何要做出“|”比div高度短吗?
答案 0 :(得分:2)
您可以使用:after
,请参阅此jsfiddle http://jsfiddle.net/mLycophq/2/
您的管道与div
中的文字一样高,或者您可以按font-size
更改。
div{
height:20px;
background-color:red;
margin: 0 10px;
padding: 10px;
display: inline-block;
}
div:after{
content: "|";
color:black;
}
或使用border
属性。
div:after{
content: "";
color:black;
border-right:1px solid black;
font-size: 10px;
}
答案 1 :(得分:1)
也许试试这个,Border length smaller than div width?
div {
width : 200px;
height : 50px;
position: relative;
z-index : 1;
}
div:before {
content : "";
position: absolute;
left : 0;
bottom : 0;
height : 50%;;
width : your width here /* or 100px */
border-bottom:1px solid magenta;
}
答案 2 :(得分:1)
执行此操作的一种方法是为line-height
<强> FIDDLE 强>
li {
display: inline-block;
border-right: 1px solid #111;
padding: 0 8px;
line-height: 4px; /* <-- here */
}
li:last-child {
border:none;
}
注意:
1)如果你需要在你的元素上设置一个固定的高度,这将不起作用。
2)从技术上讲,这种方法也会降低元素的高度。但最终效果
实现是因为文本的字体大小决定了文本的高度而不是行高
答案 3 :(得分:0)
如果您使用的是有序或无序列表,那么您只需将ul
ol
的填充设置为大于li
的填充。我是为了类似的问题而这样做的,它对我很有帮助。希望这可以帮助。确保li
是你分配边界属性的地方。