美文网首页
16-CSS边框圆角和渐变

16-CSS边框圆角和渐变

作者: 喝酸奶要舔盖__ | 来源:发表于2018-10-29 16:47 被阅读0次

边框圆角属性

  • 设置边框圆角属性的格式
    • 第一个参数是水平方向, 第二个参数是垂直方向
      会以水平方向和垂直方向相交的地方作为圆心, 开始画圆
      border-top-left-radius: 设置左上角
      border-top-right-radius: 设置右上角
      border-bottom-left-radius: 设置左下角
      border-top-right-radius: 设置有下角

    注意点:
    如果只给了一个值, 那么水平方向和垂直方向相等

    border-top-left-radius: 100px 50px;
    border-bottom-left-radius: 100px 50px ;
    
    • border-radius:
      第一个参数代表左上角
      第二个参数代表右上角
      第三个参数代表右下角
      第四个参数代表左下角

      注意点:
      如果省略了一个参数, 那么就等于对角
      如果只传递了一个参数, 那么四个角一样
      技巧:
      如果以后在企业开发中, 想画圆, 那么只需要设置圆角等于宽度的一半即可

    border-radius: 50%;
    border-radius: 100px,100px,100px,100px;
    

绘制椭圆

  • 绘制椭圆水平方向为盒子宽度的一半,垂直方向为盒子高度的一半
<style>
        div {
            width: 300px;
            height: 100px;
            border: 1px solid #000;
            margin: 100px auto;
            background-color: red;
            /*绘制椭圆水平方向为盒子宽度的一半,垂直方向为盒子高度的一半*/
            /*border-radius: 150px / 50px;*/
            border-radius: 50%;
        }
    </style>

绘制半圆

  • 盒子两个角水平和垂直方向为宽度的一半.盒子高度为宽度的一半即可
<style>
        div{
            width: 400px;
            height: 200px;
            background-color: green;
            /*绘制上半圆*/
            /*border-top-left-radius: 200px;*/
            /*border-top-right-radius: 200px;*/
            /*绘制下半圆*/
            border-bottom-left-radius: 200px;
            border-bottom-right-radius: 200px;
        }
    </style>

绘制圆环

  • border-radius的大小如果小于border的大小, 那么内边框是直角
  • border-radius的大小如果大于border的大小, 那么内边框是圆角
<style>
        div{
            width: 300px;
            height: 300px;
            margin: 100px auto;
            border: 100px solid #000;
            /*border-radius: 50%;*/
            border-radius: 150px;
            box-sizing: border-box;
        }
    </style>

线性渐变

  • 1.默认情况下, 线性渐变是从上至下的渐变的
    2.可以通过在所有颜色的最前面添加to XXX的方式, 来指定往哪个方向渐变
    3.还可以通过在所有颜色的最前面添加一个度数的方式, 来指定往哪个方向渐变
background: linear-gradient(to left,yellow,red,rebeccapurple);
background: linear-gradient(45deg,green,red,blue);
  • 可以在每一个颜色后面添加一个单位
    如果是第一个颜色: 那么代表着指定单位的区域不渐变
    如果是第二个颜色: 那么代表从第一个颜色指定的位置开始渐变, 渐变到第二个颜色指定的位置,后面剩余的全部纯色
background: linear-gradient(to right, red 100px,green 150px, yellow 200px);

径向渐变

  • 1.默认情况下径向渐变会从盒子的中心点开始向四周扩散
  • 2.我们可以通过在所有颜色前面加上 at 方向,指定渐变的中心
  • 3.除了可以通过关键字指定方向以外, 还可以直接指定像素
  • 4.我们可以通过在所有颜色前面加上像素来指定扩散的范围
  • 5.如果需要同时指定开始扩散的位置和扩散的范围, 那么将范围写在前面
background: radial-gradient(red,rebeccapurple);
指定渐变中心点
background: radial-gradient(at top left,green, rebeccapurple);
渐变中心点接收像素
background: radial-gradient(at 100px 100px,green,yellow);
background: radial-gradient(100px,greenyellow,blue);
同时指定渐变范围和渐变中心位置
background: radial-gradient(200px at top left,green,mediumpurple);
  • 渐变练习
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        body{
            background-color: #000000;
        }
        div{
            width: 600px;
            height: 100px;
            border: 1px solid lavender;
            margin: 100px auto;
            font-size: 80px;
            text-align: center;
            line-height: 100px;
            font-weight: bold;
            color: rgba(255,255,255,.3);
            background-image: linear-gradient(-30deg, transparent 30px, white 60px, white 120px, transparent 150px);
            background-position: -450px 0;
            background-repeat: no-repeat;

            -webkit-background-clip: text;
            /*transition-property: background-position;
            transition-duration: 3s;
            transition-timing-function: linear;*/
            transition: background-position 2s linear;
        }

        div:hover{
            background-position: 400px 0;
        }
    </style>
</head>
<body>
<div>IG加油加油!</div>
</body>
</html>

相关文章

网友评论

      本文标题:16-CSS边框圆角和渐变

      本文链接:https://www.haomeiwen.com/subject/hoobtqtx.html