首页 > 开发 > CSS > 正文

CSS3样式linear-gradient的使用实例

2024-07-11 08:41:55
字体:
来源:转载
供稿:网友

linear-gradient

1.linear-gradient是CSS3中新增的样式,主要用于颜色的渐变效果。

2.linear-gradient在不同内核下使用方式不同。

实用栗子(在Chrome下)

1.缺角效果

 先看效果图

<div class="div1">    这是内容</div>
.div1 {        width: 100px;        height: 40px;        line-height: 40px;        background:linear-gradient(-135deg, transparent 15px, #162e48 0);        color: #fff;        padding: 5px 15px;        text-align: center;        margin-bottom: 30px;    }

2.补角效果

先看效果图

 

.div2 {        width: 100px;        height: 40px;        line-height: 40px;        background:linear-gradient(-135deg, #f00 15px, #162e48 0);        color: #fff;        padding: 5px 15px;        text-align: center;        margin-bottom: 30px;    }

只是在栗子1的基础上修改了linear-gradient,将transparent修改为#f00

3.带边框的效果

先看效果图

<div class="div3">    这是内容</div>
.div3 {        width: 100px;        height: 40px;        line-height: 40px;        background:linear-gradient(-135deg, #f00 15px, #162e48 0);        color: #fff;        padding: 5px 15px;        text-align: center;        margin-bottom: 30px;        box-shadow: 0 0 1px 1px #fff inset;    }

在栗子2的基础上增加了box-shadow,当然加边框可以有多种方式,可自行选择。

4.开关效果

效果图

<div class="div4">    <div class="div4-1">OFF</div>    <div class="div4-2 active">ON</div></div>
.div4 {        width: 144px;        height: 30px;        line-height: 30px;        background: #162e48;        color: #FFF;        text-align: center;        margin-bottom: 30px;    }    .div4-1, .div4-2 {        width: 86px;        float: left;    }    .div4-1.active {        margin-right: -28px;        background:linear-gradient(-135deg, transparent 20px, #f00 0);    }    .div4-2.active {        margin-left: -28px;        background:linear-gradient(45deg, transparent 20px, #f00 0);    }

最终效果可根据需要自行调整

5.在栗子3的基础上做到以下效果,单纯使用linear-gradient没有找到解决方法,如有方案,请在评论下给出方案。以下是其中一种解决方式

效果图

.div5 {        width: 100px;        height: 40px;        line-height: 40px;        background:linear-gradient(-135deg, #fff 15px, #162e48 0);        color: #fff;        padding: 5px 15px;        text-align: center;        box-shadow: 0 0 1px 1px #fff;        margin-bottom: 30px;        position: relative;    }    .div5:after {        content: ' ';        border: solid transparent;        position: absolute;        border-width: 12px;        border-top-color: #000;        border-right-color: #000;        top: -2px;        right: -2px;    }

6.考虑到兼容性问题,可以通过:before和:after实现同样的效果,给出一个栗子

.div6 {        width: 100px;        height: 40px;        line-height: 40px;        background:#162e48;        color: #fff;        padding: 5px 15px;        text-align: center;        position: relative;        border: 1px solid #fff;        margin-bottom: 30px;    }    .div6:before {        content: ' ';        border: solid transparent;        position: absolute;        border-width: 15px;        border-top-color: #fff;        border-right-color: #fff;        right: 0px;        top: 0px;    }    .div6:after {        content: ' ';        border: solid transparent;        position: absolute;        border-width: 15px;        border-top-color: #000;        border-right-color: #000;        top: -1px;        right: -1px;    }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表