滑动门以及圆角边框的多种实现方式——2018-02-02

一、CSS3实现:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CSS3实现</title>
    <style>
        body{
            background: grey;
        }
        .box{
            margin: 30px auto;
            width: 200px;
            height: 200px;
            border: 2px solid black;
            border-radius: 20px;/* CSS3实现 */
        }
    </style>
</head>
<body>
    <div class="box"></div>
</body>
</html>

缺点:IE6下不兼容CSS3

二、三层嵌套实现:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>三层嵌套实现</title>
    <style>
        .box{
            width: 200px;
            margin: 30px auto;
        }
        .boxHead{
            background: url('img2/boxH.png') repeat-x;
            height: 9px;
            overflow: hidden;
        }
        .HeadL{
            background: url('img2/boxHL.png') no-repeat;
        }
        .HeadR{
            background: url('img2/boxHR.png') no-repeat right 0;
            height: 9px;
        }
        
        .center{
            border-left: 1px solid #e5e5e5;
            border-right: 1px solid #e5e5e5;
        }

        .footerHead{
            background: url('img2/boxF.png') repeat-x;
            height: 9px;
            overflow: hidden;
        }
        .footerL{
            background: url('img2/boxFL.png') no-repeat;
        }
        .footerR{
            background: url('img2/boxFR.png') no-repeat right 0;
            height: 9px;
        }
    </style>
</head>
<body>
    <div class="box">
        <div class="boxHead">
            <div class="HeadL">
                <div class="HeadR"></div>
            </div>
        </div>

        <div class="center">
                内容内容内容内容内容<br/>
                内容内容内容内容内容<br/>
                内容内容内容内容内容<br/>
                内容内容内容内容内容<br/>
                内容内容内容内容内容<br/>
        </div>

        <div class="footerHead">
            <div class="footerL">
                <div class="footerR"></div>
            </div>
        </div>
    </div>
</body>
</html>

效果图:

三层嵌套实现.png

缺点:边框圆角不透明。

三、三层嵌套加定位实现

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>三层嵌套加定位实现</title>
    <style>
        body{
            background: grey;
        }
        .box{
            width: 82px;
            margin: 30px auto;
            background: url('img3/btn.gif') repeat-x;
        }
        .boxL{
            background: url('img3/btnL.gif') no-repeat;
            position: relative;
            left: -9px;
        }
        .boxR{
            background: url('img3/btnR.gif') no-repeat right 0;
            height: 30px;
            position: relative;
            right: -18px;
        }
    </style>
</head>
<body>
    <div class="box">
        <div class="boxL">
            <div class="boxR"></div>
        </div>
    </div>
</body>
</html>

效果图:

圆角透明.png

四、三层嵌套加margin实现:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>三层嵌套加margin实现</title>
    <style>
        body{
            background: grey;
        }
        .boxL{
            width: 100px;
            margin: 30px auto;
            background: url('img3/btnL.gif') no-repeat;
        }
        .boxR{
            background: url('img3/btnR.gif') no-repeat right 0;
        }
        .box{
            height: 30px;
            background: url('img3/btn.gif') repeat-x;
            margin: 0 9px;
        }
    </style>
</head>
<body>
    <div class="boxL">
        <div class="boxR">
            <div class="box"></div>
        </div>
    </div>
</body>
</html>

效果图:

圆角透明.png

总结:

一般拓展性强的用三层嵌套实现,拓展性不强的用两层嵌套实现,无拓展性的直接用确定像素的背景实现。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,686评论 1 92
  • •前端面试题汇总 一、HTML和CSS 21 你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么? ...
    Simon_s阅读 6,582评论 0 8
  • 基本内容: html超文本标记语言。 页面组成: html>//版本声明 //万国码——gb1312解决中文乱码 ...
    Spencerhyuk阅读 5,148评论 0 1
  • 一:在制作一个Web应用或Web站点的过程中,你是如何考虑他的UI、安全性、高性能、SEO、可维护性以及技术因素的...
    Arno_z阅读 4,997评论 0 1
  • menu代码如下 效果如图: 将代码修改,如下: 即在每个item节点中添加 效果图如下:
    _凌浩雨阅读 5,215评论 0 1