通过子div覆盖父div的border-bottom

今天有个作业涉及到通过子div覆盖父div的border-bottom,如例子

点击前

点击后

<!DOCTYPE html>
<html lang="en">  
<head>  
    <meta charset="UTF-8">  
    <title>Document</title>  
<style type="text/css">  
    div{  
        width: 300px;  
        height:300px;  
		border:red solid 10px;
    }  
    div a{  
        display: block;  
        height:300px;  
    }  
    .bottom{  
        color:white;  
        height:300px;  
        border-bottom: 10px solid white;  
    }  
</style>  
<script type="text/javascript">  
      
    function show (ojb) {  
        ojb.className="bottom";  
    }  
</script>  
</head>  
<body>  
    <div>  
    <a href="#" οnclick="show(this)">隐藏下边</a>  
    </div>  
</body>  
</html>  


简单解释:

如果不想子元素的border覆盖父元素的,可以在父元素加上overflow:hidden,让它变成BFC,里面的盒子不影响外面的盒子

额,顺便想到了一道前端面试题:点击打开链接


<!DOCTYPE html>  
<html lang="en">  
<head>  
    <meta charset="UTF-8">  
    <title>Document</title>  
<style type="text/css">  
#demo {
    width: 100px;
    height: 100px;
    border: 2px solid #000;
    position: relative;
}
#demo:after {
    content: '';
    display: block;
    width: 14.1421px;
    height: 14.1421px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    position: absolute;
    right: -10px;
    top: 20px;
    transform: rotate(45deg);
    background-color: #fff;
}
</style>    
</head>  
<body>  
    <div id='demo'>  
    </div>  
</body>  
</html>  



border-bottom虚线的实现有多种方式。其中一种是利用边框border属性,通过设置border-bottom为1px dashed来实现虚线效果。具体的CSS代码如下所示: ```css div { width: 500px; padding: 10px; } .dashed { border-bottom: 1px dashed #000; } ``` 在上述代码中,我们定义了一个class为dashed的div元素,并通过设置border-bottom属性来实现虚线效果。border-bottom的值1px表示边框的宽度,dashed表示边框的样式为虚线,#000表示边框的颜色。这样,就可以在div元素的底部创建一个虚线边框。 除了使用border属性,还可以利用background的linear-gradient属性来实现虚线效果。具体的CSS代码如下所示: ```css div { width: 500px; padding: 10px; } .rectangle { border: 1px dashed transparent; background: linear-gradient(#fff, #fff) padding-box, repeating-linear-gradient(-45deg, #000 0, #000 .3em, #fff 0, #fff .6em); /* .3em 控制虚线的宽度或者长度,.6em 控制虚线的间隙 */ } ``` 在上述代码中,我们定义了一个class为rectangle的div元素,并通过设置border和background的linear-gradient属性来实现矩形虚线效果。border的值1px dashed transparent表示边框的宽度为1px,样式为虚线,颜色为透明,这样可以隐藏实线边框。而background的linear-gradient属性则通过重复渐变来实现虚线的效果。通过设置不同的颜色和间隔,可以调整虚线的样式。 总结起来,border-bottom虚线可以通过设置border属性的样式或者利用background的linear-gradient属性来实现,具体的效果取决于所设置的参数和样式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值