CSS3之border-radius(圆角)拓展阅读

当时写这篇文章主要是想探讨一下优雅降级和渐进增强的区别,按照正常的逻辑思维,不管是降级还是增强,应该对于效果是没什么区别的,因为后者会覆盖前者,但今天无意看到张鑫旭的一篇文章,关于CSS3属性的书写顺序(10年的,原谅我的孤陋寡闻T_T),标准的css3属性和带webkit的前缀在某些情况是不一样的效果,比如border-radius和-webkit-border-radius带两个参数时,显示的效果并不一样:

.not-a-square {
   border-radius: 30px 10px; /*让box左上和右下角为30像素圆弧,左下角和右上是10像素圆弧*/
   -webkit-border-radius: 30px 10px; /*box渲染为每个角都是30像素宽10像素高的圆弧*/
}

 展示结果(直接借图啦,当然本鱼也实践过了,确实如此~): 

顺便带出一下border-radius的参数:

据w3c上的官方解释,是这样子的:

border-radius: 1-4 length|% / 1-4 length|%;1-4指的是radius的四个值,length和%指的是值的单位。

写过border的人都知道border可以带四个参数分别设置四个边框(上左下右的顺序),同样的,border-radius也可以带四个参数,并且以顺时针的方向解析,上左,上右,下右,下左:

box{
    border-radius: 5px 10px 20px 50px
}

  

展示结果:

两个参数的时候,是上左和下右,上右和下左,比如.div1{border-radius: 2em 1em},就不截图了,直接demo

三个参数的时候,是上左,上右和下左,下右,比如.div1{border-radius: 2em 1em 3em},demo

那么以斜杠/分开后面的参数是怎么回事呢?是这样子的,第一个参数表示圆角的水平半径,第二个参数表示圆角的垂直半径,所以你现在就可以画一个左右不对称的圆角啦:

.div1{border-radius: 2em/1em}

  

看到这里你会不会以如果四个圆角都要分别制定特殊的形状,是不是 2em/1em , 1em/0.5em, 3em/1em, 1em/1em像上面那个四个参数一样的设定(我就是这么以为的),答案是错!误!的!因为官方的解释就是前面放1-4后面放1-4啊!鱼不是被吃掉的就是被笨s的~

.div1{
        border-radius:10px 20px 30px 40px/40px 30px 20px 10px
}

  

按顺时针的顺序,斜杠/左边是四个圆角的水平半径,右边是四个圆角的垂直半径,但是通常我们很少写右边的参数,那就是默认右边等于左边的值。当然你也可以省略一些值,比如这样子写.div1{border-radius: 2em 1em 4em / 0.5em 3em;},解析顺序你就可以按照上面的自己推算一下啦。

然后再回到张老师的那个-weibkit前缀下的问题{-webkit-border-radius:30px 10px}实际上就等于{border-radius:30px/10px},效果是一样的,至于为什么,我也还不知道,张老师说background-image也有此问题,姐明天再瞧瞧,back home~

参考: 

技术教程:

   http://www.w3cplus.com/css3/border-radius

转载博客:

  http://www.zhangxinxu.com/wordpress/2010/09/%E9%9C%80%E8%AD%A6%E6%83%95css3%E5%B1%9E%E6%80%A7%E7%9A%84%E4%B9%A6%E5%86%99%E9%A1%BA%E5%BA%8F/  http://www.w3school.com.cn/cssref/pr_border-radius.asp

时间: 2024-11-03 05:31:24

CSS3之border-radius(圆角)拓展阅读的相关文章

CSS3边框属性_圆角、CSS画基本图形(圆形、三角形、多边形、爱心、八卦等)

有一些需要用到CSS3的属性,所以在你打开这篇文章的时候,用的是firefox或者chrome,当然IE也能看一部分 1.正方形 div{ background:#F00; width:100px; height:100px; } 2.长方形 div{ background:#F00; width:200px; height:100px; } 3.圆形 div{ width: 100px; height: 100px; background: red; -moz-border-radius: 5

WPF 使用Border创建圆角边框

创建圆角边框可以通过设置border的 CornerRadius 属性其边框呈现圆角样式 代码: <Border Height="50" Background="Red" CornerRadius="20,0,0,0" > 效果图: 位置说明: CornerRadius="左,右,右下,左下" 提示: 如过圆角处有颜色,请将外层容器的背景色设置为透明 Background="Transparent&quo

【转载】CSS3之Clip(裁剪)拓展阅读

Clip属性是大家经常会误解的一个属性,这篇文章帮助大家充分的了解和学习clip属性,用这个属性制作出更好的效果. 我可以确定Clip属性有很多同学并不知道,因为这个属性使用率非常的底,我初次接触是在Drupal的主题之中,他们有一段用来隐藏文本的代码,就是使用的clip属性. /* Hide only visually, but have it available for screenreaders*/ .visuallyhidden { border: 0 none !important;

css3学习总结1--CSS3圆角边框

绘制一个圆角边框的示例 .div{ border: solid 5px blue; border-radius: 20px; -moz-border-radius:20px; -o-border-radius: 20px; -webkit-border-radius:20px; background-color:skyblue; padding:20px; width:180px; } 在示例中具有一个div元素,使用border-radius属性将其边框绘制为圆角边框,圆角半径为20像素,边框

WPF 采用Border创建圆角

通过设置可以创建圆角border的CornerRadius属性其边框呈现圆角样式 代码: <Border Height="50" Background="Red" CornerRadius="20,0,0,0" > 效果图: 位置说明: CornerRadius="左,右,右下,左下" 提示: 如过圆角处有颜色,请将外层容器的背景色设置为透明 Background="Transparent" 版

css3实现border渐变色

心血来潮 什么都不说 上代码 .gradualChange{width: 300px;height: 300px;border:20px solid;//兼容border-image: -webkit-linear-gradient(#000,#333,#000) 30 30;border-image: -moz-linear-gradient(#000,#333,#000) 30 30;border-image: linear-gradient(#000,#333,#000) 30 30;}

css3学习--border

http://blog.sina.com.cn/s/blog_61671b520101gelr.html border-radius border-radius: 50px 20px;上下都是50px,左右是20px border-radius:50px 0px 30px; 上50px 左右0px 下30px; 圆和椭圆的区别在于,椭圆的长短半轴不相等 border-radius还可以用斜杠设置第二组值.这时,第一组值表示水平半径,第二组值表示垂直半径.第二组值也可以同时设置1到4个值,应用规则

关于MVVM和RAC的一些拓展阅读

Introduction to MVVM by Ash Furrow Functional Reactive Programming on iOS by Ash Furrow A sample app by Ash Furrow MVC, MVVM, FRP, And Building Bridges by Jonathan Penn MVVM Tutorial with ReactiveCocoa by Colin Eberhardt on the Ray Wenderlich site. B

小tip: CSS3如何实现圆角的outline效果?

by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=4765 一.首先,outline是个很牛逼的东西 温故而知鑫,10年的时候写过一篇可用性方面的文章:"页面可用性之outline轮廓外框的一些研究",还算挺有用的:3年之后,也就是13年,介绍了个没什么使用价值的东西:"纯CSS实现的outline切换transition动画效果". 个把星