2014-11-06 113 views
0

我试图在纯CSS来实现的设置引导3面板的左边框:CSS如何制作一个完全分配的左边界(或右边界)?

enter image description here

下面是做到这一点的strandard方式:

.panel-default>.panel-heading.standard { 
    border-left: 5px solid red; 
} 

这里使用伪元素:

.panel-default>.panel-heading.pseudo:before { 
    position: absolute; 
    top: 0; 
    left: 0; 
    content: " "; 
    display: block; 
    width: 4px; 
    height: 100%; 
    background-color: blue; 
} 

在这两种情况下结果都不正确。用标准的方式,边界有点“倾斜”(只在右下角,为什么?),用伪元素可以使矩形边界为负(即-1,-1),但是我需要知道确切的标题的高度:

enter image description here

回答

1

你不需要知道标题的确切高度,只边界的高度。因此,举例来说,如果在顶部和底部的边框都1px的:

.panel-default>.panel-heading.pseudo:before { 
    position: absolute; 
    top: -1px; 
    bottom: -1px; 
    left: 0; 
    content: " "; 
    display: block; 
    width: 4px; 
    background-color: blue; 
} 

演示:http://jsfiddle.net/sbr3q2tq/

+0

遗憾的是它不工作;伪元素高度不会展开到底部,事件将其设置为-1。 – gremo 2014-11-06 21:32:43

+0

@gremo我编辑了我的答案,您需要删除'height:100%' – 2014-11-06 21:38:59

+0

@SteveSanders height:auto;也适用,以防OP需要覆盖不同的行为。 – Michael 2014-11-06 21:45:42