好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

border-radius 圆角

border-radius 圆角

如果想要把元素边界变得圆润,不妨试试这个 属性 。

1. 官方定义

通过 CSS3,您能够创建圆角边框并且不需使用设计软件,比如 PhotoShop。

2. 解释

通过给 一个 html 元素 标签 的样式 增加 一条 border-radius 属性 ,让这个元素的边角由直角边变成圆弧。

3. 语法

它的 用法 遵循 css 通用的: 左上、 右上 、右下 、左下 的原则。

  border-radius  : value ; 
 

属性 描述 border-radius 四个边角值 border-top-left-radius 左上角 圆弧值 border-top-right-radius 右上角圆弧值 border-b ott om-right-radius 右下角圆弧值 border-b ott om-left-radius 左下角圆弧值

包含参数

参数 名称 参数类型 value ‘%’ | ‘px’ | ‘rem’

只有 一个 参数时:

 border-radius:value;
 

value 代表给这个元素 4 个方向 增加 一个 的圆弧值。

只有两个参数时,中间用空格分开:

 border-radius:value1 value2;
 

value1 代表 左上、右下,value2 代表 右上、左下角圆弧值。

只有三个参数时,中间用空格分开:

 border-radius:value1 value2 value3;
 

value1 代表左上 value2 代表 右上 左下 value3 代表右下
4. 有四个参数时,中间用空格分开

 border-radius:value1 value2 value3 value3;
 

value1 ~ value4 分别代表左上、 右上 、右下 、左下四个角的圆弧值

4. 兼容性

IE Edge Firefox Chrome Safari Opera ios android 9 all all all all all all all

5. 示例

给 demo 增加 右上和左下的圆角

    < div   class   =  " demo "   >     </ div  >  
 

可以这样

   .demo   {    
     border-radius  :   px  px ;   
 } 
 

推荐第一种写法,但是也可以这样

   .demo   {    
     border-top-right-radius  : px ;   
     border-b ott om-left-radius  : px ; 
 } 
 

效果 图

demo 增加 右上和左下的圆角 效果 图

制作 一个 带有圆角的卡片

    < div   class   =  " card "   >  
       < div   class   =  " text "   >  
        demo1
       </ div  >  
   </ div  >  
 

   .card   { 
     background  :  red ; 
     width  :  px ; 
     height  :  px ; 
     line-height  :  px ;     
     text-align  :  center ; 
     border-radius  :  px ; 
 } 
  .text   { 
      dis play  :  inline-block ; 
     width  :  px ; 
     height  :  px ; 
     line-height  :  px ; 
     background  :   #fff  ; 
     border-radius  :   ; 
 } 
 

效果 图

带有圆角的卡片 效果 图

给 一个 table 增加 圆角左上和右上是 8px 右下和左下是直角

    < table  >  
       < tr  >  
           < td  >  姓名   </ td  >     < td  >  年龄   </ td  >  
       </ tr  >  
       < tr  >  
           < td  >  demo   </ td  >     < td  >  19   </ td  >  
       </ tr  >  
   </ table  >  
 

  table  {    
     background  :  red ; 
     border-radius  :  px px   ;       
     font-size  :  px ; 
     color  :   #fff  ; 
     border-collapse  :  collapse ; 
     overflow  :  hidden ; 
 } 
 

`table` 增加 圆角左上和右上是 8px 右下和左下是直角 效果 图

6. 经验 分享

border-radius:50% 会让 一个 宽度和高度相等的块级元素变成 一个 圆。

   .demo   { 
     width  : px ; 
     height  : px ; 
    border-radius:
 } 
 

设置 50% 的好处就是不用再去计算他的宽高,例如上面这个例子 border-radius:50px 同样可以让这个元素变成 一个 圆。
2. 如果圆角过大,记得要设定 padding ,这样可以避免里面的 内容 超出元素。

7. 小结

不要让 border-radius 的 % 值大于 50,因为如果两个相邻的半径和超过了对应的盒子的边的长度,那么浏览器要重新计算以保证它们不重合。虽然表面上看没有问题但是这样会对 性能 有影响。 如果用 rem 、 em 单位在移动端用 border-radius 画圆,在部分机型里面是椭圆的问题,可以通过 50% 来 解决 ,或者使用 px 配合缩放 scale 来实现 rem 单位的 效果 。 在内联元素 span 这类 标签 使用这个 属性 的时候同样有效但是记得不要使用 % 这样会导致一些 span 标签 的圆角不一样因为 % 是参考长和宽计算的。 border-radius 圆角并不会隐藏 标签 内部元素的 内容 ,如果有 内容 溢出的情况记得 增加 overflow:hidden; 任何元素都可以使用这个 属性 , 包括 视频、音频 标签 等等。 一般情况下不推荐 border-top-left-radius 这类的写法除非是需要在某种交互过程中需要改变其中 一个 的圆角值而其它的保持不变。因为这类的 标签 会影响浏览器渲染的 性能 。

box-shadow 阴影 ? ?borderImage 边框图片

查看更多关于border-radius 圆角的详细内容...

  阅读:52次

上一篇

下一篇

第1节:CSS3简介    第2节:border 边框    第3节:borderImage 边框图片    第4节:border-radius 圆角    第5节:box-shadow 阴影    第6节:box-sizing 盒类型    第7节:gradients 渐变    第8节:text-justify 对齐    第9节:text-overflow 文字超出    第10节:text-shadow 文本阴影    第11节:word-break 文本打断    第12节:word-wrap 文本换行    第13节:letter-spacing 字间距    第14节:perspective 透视    第15节:transform 2D 空间转换    第16节:transform 3D 空间转换    第17节:transition 过渡    第18节:animation 动画    第19节:columns 字符分割    第20节:flex 弹性盒子布局    第21节:flex order 顺序    第22节:flex: grow、shrink、basis    第23节:flex-direction 排列方向    第24节:justify-content (轴内)对齐方式    第25节:flex-wrap 换行    第26节:align-items 竖直方向对齐方式    第27节:align-content    第28节:Grid 布局简介    第29节:Grid 行和列    第30节:media 媒体查询    第31节:only 元素选择    第32节:before && after 位置    第33节:nth 类型元素选择器    第34节:calc 计算属性