>웹 프론트엔드 >HTML 튜토리얼 >CSS3学习笔记之border-radius_html/css_WEB-ITnose

CSS3学习笔记之border-radius_html/css_WEB-ITnose

WBOY
WBOY원래의
2016-06-24 12:33:551240검색

我觉得CSS3很不错,自己也稍微看过,并且尝试过一些属性。对我自己而言,我没有勇气说我学过CSS3,我觉得任何自己看来很小的事情,也只是站在自己的角度来评判。就算的是“简单的”HTML在我看来也是很值得研究的,只有时刻保持一个谦逊的姿态,才能够看得更远,走得更稳。

在这里要感谢一下网站:

w3cplus,W3School ,W3C 等等一些网上的教程啊博客什么的(还有好多就不一一列举了),我算是从这些地方开始接触传说中的CSS3和HTML5,而自己的学习笔记自然也会从中借鉴。


今天介绍的是CSS3的圆角 :border-radius

 

遥想当年……在CSS2的基础上做圆角还能算得上是门学问!!各种图片、各种嵌套(《精通CSS??高级web标准解决方案》中有介绍,过程在这就不说了,网上一查就查得到,总之就是:没用CSS3之前觉得很高端,用了CSS3之后就不想再看到它了)

但是自从CSS3的圆角属性border-radius出现之后,广大前端工程师可以省去了很多烦恼,不仅减少了工作量,还能提高网站的性能。只可惜高贵的低版本IE不支持CSS3的绝大部分属性……或者说几乎都不支持,虽然牛人们有写很多针对IE的兼容方案,但是我不推荐用。圆角很多时候只是在视觉上更优雅,基本不影响用户使用。

你看不到圆角只能怪你和低版本IE做朋友!!!!

好,现在开始正式介绍这个高贵的属性

border-radius的用法:

属性名 border-top-right-radius, border-bottom-right-radius, border-bottom-left-radius, border-top-left-radius,border-radius
属性值 长度(eg:10px)
初始值 0
可否继承 不能继承

border-radius中的值的大小决定了圆弧的形状,每个角的圆弧其实就是以在这个角上设定的值的大小为半径画出的圆的1/4弧线。

举个栗子:当border-radius只有一个值的时候

设置border-radius:50px;

CSS代码:

 1: .test{
 2:     width:200px;
 3:     height:200px;
 4:     background:#368;
 5:     margin:80px auto;/*为了使元素居中,没有别的意思*/
 6:     -webkit-border-radius:50px;
 7:     -moz-border-radius:50px;
 8:     -o-border-radius:50px;
 9:     border-radius:50px;
 10: }

 
HTML代码:
 

<p> 1: <div class="test"></div></p>

效果如下:

为使得效果更加明显,现在将border-radius的值修改为100px,也就是div.test的宽度的一半:

可以看到,现在变成一个完整的圆形了!!!!如果我们过圆心,分别在水平方向和竖直方向各做一条线就能看出,其实每个角的圆弧其实就是以这个值为半径画出的圆的1/4弧线。

 

再举个栗子:当border-radius有多个值的时候

设置border-radius:100px 50px;(代码和上面的类似,只是修改了border-radius,故不在重复)。

经测试,在我的谷歌,火狐,IE9,10下效果如下

如果我们像上图一样。将左上角定为“左”,右上角定位“右”,以此类推,会发现两个值的border-radius的规则就像是margin,padding的规则一样:第一个值表示上下,第二个值表示左右。

同理设置border-radius:100px 50px  0px;

效果如下:

 

设置border-radius:100px 50px 25px 0px;

经测试,效果如下

就像之前说的一样,border-radius值的设定就像padding,miargin一样,很简单。

好的,现在来总结一下的使用:

只有一个值的时候,四个角都以相同的弧度成圆角。 只有两个值的时候,第一个值表示左上角和右下角,第二个表示右上角和左下角 有三个值的时候,第一个值表示左上角,第二个值,也就是中间的值白哦是右上角和左下角,第三个值表示右下角 有四个值的时候,按照左上,右上,右下,左下的顺序表示

 

 

全文到此结束,有错误的地方欢迎指正!!

 

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.