首页 >web前端 >css教程 >如何仅使用 CSS3 创建内嵌边框半径?

如何仅使用 CSS3 创建内嵌边框半径?

Patricia Arquette
Patricia Arquette原创
2024-12-03 10:46:10723浏览

How Can I Create an Inset Border Radius Using Only CSS3?

使用 CSS3 创建插入边框半径

传统上,创建插入边框需要图像或其他元素。然而,CSS3 提供了一种使用渐变的创新解决方案。

Lea Verou 巧妙的 CSS 建议在元素的角上使用透明的径向渐变。这些渐变模仿曲线,给人一种嵌入边框半径的错觉。

div.round {
    background:
        -moz-radial-gradient(0 100%, circle, rgba(204,0,0,0) 14px, #c00 15px),
        -moz-radial-gradient(100% 100%, circle, rgba(204,0,0,0) 14px, #c00 15px),
        -moz-radial-gradient(100% 0, circle, rgba(204,0,0,0) 14px, #c00 15px),
        -moz-radial-gradient(0 0, circle, rgba(204,0,0,0) 14px, #c00 15px);
    background:
            -o-radial-gradient(0 100%, circle, rgba(204,0,0,0) 14px, #c00 15px),
            -o-radial-gradient(100% 100%, circle, rgba(204,0,0,0) 14px, #c00 15px),
            -o-radial-gradient(100% 0, circle, rgba(204,0,0,0) 14px, #c00 15px),
            -o-radial-gradient(0 0, circle, rgba(204,0,0,0) 14px, #c00 15px);
    background:
            -webkit-radial-gradient(0 100%, circle, rgba(204,0,0,0) 14px, #c00 15px),
            -webkit-radial-gradient(100% 100%, circle, rgba(204,0,0,0) 14px, #c00 15px),
            -webkit-radial-gradient(100% 0, circle, rgba(204,0,0,0) 14px, #c00 15px),
            -webkit-radial-gradient(0 0, circle, rgba(204,0,0,0) 14px, #c00 15px);
    background-position: bottom left, bottom right, top right, top left;
        -moz-background-size: 50% 50%;
        -webkit-background-size: 50% 50%;
    background-size: 50% 50%;
    background-repeat: no-repeat;
}

此方法依赖于浏览器对渐变和 rgba 的支持,因此请考虑对旧版浏览器使用基于图像的后备。

以上是如何仅使用 CSS3 创建内嵌边框半径?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn