zoukankan      html  css  js  c++  java
  • CSS3样式linear-gradient的使用

    linear-gradient

    1. linear-gradient是CSS3中新增的样式,主要用于颜色的渐变效果。MDN地址
    2. linear-gradient在不同内核下使用方式不同,详细内容可参考w3cplus

    实用栗子(在Chrome下)

    1. 缺角效果
      先看效果图

      <div class="div1">
          这是内容
      </div>
      .div1 {
               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. 补角效果
      先看效果图

      <div class="div2">
          这是内容
      </div>
      .div2 {
               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 {
               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 {
               144px;
              height: 30px;
              line-height: 30px;
              background: #162e48;
              color: #FFF;
              text-align: center;
              margin-bottom: 30px;
          }
          .div4-1, .div4-2 {
               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 {
               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- 12px;
              border-top-color: #000;
              border-right-color: #000;
              top: -2px;
              right: -2px;
          }
    6. 考虑到兼容性问题,可以通过:before:after实现同样的效果,给出一个栗子

      .div6 {
               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- 15px;
              border-top-color: #fff;
              border-right-color: #fff;
              right: 0px;
              top: 0px;
          }
          .div6:after {
              content: ' ';
              border: solid transparent;
              position: absolute;
              border- 15px;
              border-top-color: #000;
              border-right-color: #000;
              top: -1px;
              right: -1px;
          }
  • 相关阅读:
    关于C语言变量初始化的两个问题的笔记
    源自StackOverflow:找到LIST中第一个降序成员,有助于对扩展方法、IEnumerable<T>、泛型的理解
    《PERL高效编程》学习笔记(1)【关于裸字处理】
    C#出题库项目的总结(2)
    遇到的浏览器兼容问题及应对方法
    春招面试小记
    关于团队成员的退出引发的一些回忆及感悟
    C#出题库项目的总结(1)
    写一个程序,分析一个文本文件(英文文章)中各个词出现的频率,并且把频率最高的10个词打印出来
    重定向和管道符
  • 原文地址:https://www.cnblogs.com/aeexiaoqiang/p/6525797.html
Copyright © 2011-2022 走看看