是否可以仅使用 HTML 和 CSS 创建像这样的 L 形边框?
编辑:这就是我目前所拥有的:http: //jsfiddle.net/cBwh8/
Edit2:我希望复制上面的图片——适当弯曲的圆角。这是我在这里遇到困难的主要原因:http: //jsfiddle.net/cBwh8/1/
是否可以仅使用 HTML 和 CSS 创建像这样的 L 形边框?
编辑:这就是我目前所拥有的:http: //jsfiddle.net/cBwh8/
Edit2:我希望复制上面的图片——适当弯曲的圆角。这是我在这里遇到困难的主要原因:http: //jsfiddle.net/cBwh8/1/
是的。
<div id="one">
<div id="two"> </div>
</div>
#one {
margin:10px;
width:45px;
height:75px;
border:2px solid #333; }
#two{
float:left;
width:35px;
height:65px;
border-width:2px;
border-style:solid;
margin:-2px 0 0 -2px;
border-color:#FFF #333 #333 #FFF;
}
试试这个:为我工作
div.outer {
margin: 10px;
width: 200px;
height: 200px;
border: 1px solid blue;
border-radius: 10px;
}
div.inner {
width: 160px;
height: 160px;
border-right: 1px solid blue;
border-bottom: 1px solid blue;
margin-top:-1px;
margin-left:-1px;
background:#FFF;
}
有点棘手,但玩得很开心
.left{float:left}
.right{float:right}
#container{border-right:1px solid #000;border-bottom:1px solid #000;width:300px;height:300px;margin:100px auto;}
#leftBox{width:70%;height:69%;border-right:1px solid #000;border-bottom:1px solid #000;}
#leftBox2{border-left:1px solid #000;width:100%;height:29%;}
#rightBox{width:29%;height:70%;border-top:1px solid #000;}
和标记
<div id="container">
<div id="leftBox" class="left"></div>
<div id="rightBox" class="right"></div>
<div id="leftBox2" class="left"></div>
一个稍微复杂但有用的选项:
http://dabblet.com/gist/2884899
这是两个兄弟元素,绝对且相对定位,z-indexed 以相互溢出。顶部 div 隐藏底部 div 的顶部边框。
这对于下拉菜单特别有用。(要有一个带边框的框,用上下文菜单展开)
编辑(从链接粘贴的代码):
HTML:
<div class="holder">
<div class="top"></div>
<div class="bottom"></div>
</div>
CSS:
.holder{
position:relative;
}
.top{
width: 50px;
height:50px;
background:red;
border:blue solid 2px;
border-bottom:none;
position:relative;
z-index:4;
}
.bottom{
z-index:2;
width: 100px;
height: 100px;
position:absolute;
top:50px;
left:0;
border: blue solid 2px;
background:red;
}
对于任何感兴趣的人,这里有一组 L 形的字段集:
HTML:
<div>
<fieldset class="topPortion">
<legend>Some legend</legend>
<input type="text" value="Foo" />
<input type="submit" value="Submit" />
</fieldset>
<fieldset class="bottomPortion">
<input type="text" value="Foo" />
<input type="submit" value="Submit" />
</fieldset>
</div>
CSS:
fieldset.topPortion
{
border: 1px solid red;
border-bottom: 0;
/*top: 20px;*/
padding: 5px 5px;
position: relative;
width: 250px;
z-index: 100;
background-color: yellow;
top: 1px;
border-radius: 5px 5px 0 0;
}
fieldset.bottomPortion
{
border: 1px solid red;
width: 500px;
height: 100px;
position: absolute;
z-index: 1;
margin-top: -10;
padding: 5px 10px;
background-color: yellow;
border-radius: 0 5px 5px 5px;
}
NECRO,实际上我刚刚遇到了这个问题,这是我发现的第一个帖子,所以我想补充一点,以防其他人遇到问题或问题仍然存在。使用您链接的edit2,将“border-radius”更改为“border-bottom-right-radius”,这使得它只有右下角最终被圆形,从而修复了奇怪的圆形/褪色边缘。
您还可以添加诸如 -moz-border-radius-bottomleft: 10px; 之类的内容。-webkit-border-bottom-left-radius: 10px; 如果您想为旧版浏览器提供更多支持。