1. 用途:为边框设置圆角,若无边框,则会作用到背景上。
2. 设置原则:
-
若为一个值,则用其为半径构建圆形,这个
圆
与
边框
的
交集
形成
圆角
效果。
-
若为两个值,则用两个值分别为半长轴、半短轴构建椭圆,这个
圆
与
边框
的
交集
形成
圆角
效果。
3. radius的值是百分比,就相当于盒子的宽度和高度的百分比。
-
例1 盒子宽高都为100px。border-top-left-radius:50% 就相当于用
50px作为半径
构建圆形,此圆形与上左边框的交集,形成圆角。
(单值规则)
-
例2 盒子宽为200px,高为100px。border-top-left-radius:50% 就相当于用
100px作为半长轴,50px作为半短轴
构建椭圆,此椭圆与上左边框的交集,形成圆角。
(单值规则)
-
例3 盒子宽高都为100px。border-top-left-radius:10% 50% 就相当于用
10px作为半短轴,50px作为半长轴
构建椭圆,此椭圆与上左边框的交集,形成圆角。
(双值规则)
-
例4 盒子宽为200px,高为100px。border-top-left-radius:10% 50% 就相当于用
20px作为半短轴,50px作为半长轴
构建椭圆,此椭圆与上左边框的交集,形成圆角。
(双值规则)
4. border-radius是简写属性:把 border-top-left-radius、border-top-right-radius、border-bottom-left-radius、border-bottom-right-radius 四个合并简写。
了解了设置规则,下面我们来看 50% 和 100% 的故事。
场景:先有边长为100px的正方形。
逐步设置各个边圆角为50%,则如下所示。
分析:
每一步都正好用
边长的一半为半径
构建圆形,圆形于边框的交集,形成圆角。
逐步设置各个边圆角为100%,则如下所示。
-
设置 border-top-left-radius: 100% 后,可见用
边长为半径
构建圆形,圆形于边框的交集,形成圆角。
-
接着添加设置 border-top-right-radius: 100%后,可见其效果为:用
边长的一半为半径
构建圆形。其实这是W3C对于
重合曲线
的规范:如果两个相邻角的半径和超过了对应的盒子的边的长度,那么浏览器要重新计算保证它们不会重合。
-
建议使用border-radius: 50% 来避免浏览器不必要的计算。
参考:MDNborder-radius1. 用途:为边框设置圆角,若无边框,则会作用到背景上。2. 设置原则:若为一个值,则用其为半径构建圆形,这个圆与边框的交集形成圆角效果。 若为两个值,则用两个值分别为半长轴、半短轴构建椭圆,这个圆与边框的交集形成圆角效果。3. radius的值是百分比,就相当于盒子的宽度和高度的百分比。例1 盒子宽高都为100px。border-top-left-radius:50% 就相当于用50px作为半径构建圆形,此圆形与上左边框的交集,形成圆..
实现边框圆角
-moz-
border
-
radius
: 32px; -webkit-
border
-
radius
: 32px;
border
-
radius
: 32px; behavior: url(
border
-
radius
.htc);
复制代码代码如下: <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”> <html xmlns=”http://www.w3.org/1999/xhtml”> <head> <style typ
前面系统总结了CSS3中Gradient和RGBA的用法,今天我们在一起来看看CSS3中制作圆角的属性
border
-
radius
的具体用法。在CSS2中,大家都碰到过圆角的制作。当时,对于圆角的制作,我们都需要使用多张圆角图片做为背景,分别应用到每个角上,我应用最多的就是在需要圆角的元素标签中加四个空标签,然后在每个空标签中应用一个圆角的背景位置,然后在对这几个应用了圆角的标签进行定位到相应的位置,具体实现过程我就不在多讲,只看方法就知道烦死人。
如今CSS3中的
border
-
radius
出现后,让我们没有那么多的烦恼了,首先制作圆角图片的时间是省了,而且其还有多个优点:其一减少网站的维护的工
border
-
radius
CSS3中的代表——第一个在社区中得到广泛使用新属性。这意味着,除去Internet Explorer 8及更低版本,所有的浏览器可以显示圆角。为了使样式能正确应用,需要为Webkit和Mozilla内核添加前缀。
CSS Code复制内容到剪贴板
-webkit-
border
-
radius
: 10px;
-moz-
border
-
radius
: 10px;
border
-
radius
: 10px;
然而,今天我们不关心前缀,只简单坚持官方形式:
border
-
radius
。
如你所料,我们可以为每个角指定不同的值。
CSS C
在使用
border
-
radius
时,发现有些人使用
50
%,有些人使用
100
%,都可以得到一个圆,那这两个值到底有什么区别呢:
border
-
radius
的值是百分比的话,就相当于盒子的宽度和高度的百分比。
如一个
50
px 1
50
px的方形,如果
border
-
radius
设置为
100
%,则等价于:
border
-
radius
:
50
px/1
50
px;
而
border
-
radius
又是由
border
...
border
-
radius
:
50
%和
100
%的区别
50
%与
100
%表现一样是因为当临角两个弧半径之和超过临接边的长度时,浏览器会按照两个半径的比例缩小至刚好等于临接边的长度。
<!DOCTYPE html>
<html lang="en">
<meta charset="UTF-8">
<title>...
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.yuanxing
一般情况下,只要你几个圆点用的同一个css,那就肯定不是你代码问。而且你查看ios中居然很完美,当然挺贵的安卓手机中基本上也没问题。造成这种原因的情况好几种:
使用了px转rem或者px转vw之类的插件,造成了计算过程中产生误差。
使用了rem或者vw之类像素单位,造成了计算过程中产生误差。
这个情况最操蛋,画圆宽高是奇数,而且圆点比较小,画出的圆就不
规则
了。
当然可能还有其他情况,毕竟安卓手机版
border
-
radius
属性用于设置元素的圆角,而
border
-top-left-
radius
、
border
-top-right-
radius
、
border
-bottom-right-
radius
和
border
-bottom-left-
radius
属性用于分别设置元素的四个角的圆角半径。
当设置
border
-
radius
为
50
%时,元素的四个角将会呈现出一个完整的圆形。而通过使用
border
-top-left-
radius
、
border
-top-right-
radius
、
border
-bottom-right-
radius
和
border
-bottom-left-
radius
属性,可以分别设置元素的四个角的圆角半径为
50
%,使得元素的四个角都呈现出一个完整的圆形。
综上所述,使用下面的代码可以将一个元素的四个角都设置为一个完整的圆形:
```css
border
-
radius
:
50
%;
border
-top-left-
radius
:
50
%;
border
-top-right-
radius
:
50
%;
border
-bottom-right-
radius
:
50
%;
border
-bottom-left-
radius
:
50
%;
这样设置后,元素的边角将变得非常圆润。