CSS3边框与圆角

html-css025

CSS3边框与圆角,第1张

属性:一个最多可指定四个border-*-radius属性的 符合属性 ,这个属性允许你为元素添加圆角边框!

语法:border-radius:1-4 length|% / 1-4length|%

【length可为任意长度单位,比如px、em。

当使用%的时候,相对的不是字体的大小而是对应边的长度的百分比,例如border-top-left-radius:50%,那么左上角的圆角在左边的弧度是边框左边长度的50%、在上边的弧度是边框上边长度的50%;

因此如果设置border-radius:50%,那么边框将会变为一个椭圆】

兼容性:IE9+、Firefox4+,Chrome,Safari5+,Opera

-------------------------------------------------

CSS3指定每个圆角:

多值:

border-radius(四个值):左上角 右上角 右下角 左下角

border-radius(三个值):左上角 右上角和左下角 右下角

border-radius(两个值):左上角和右下角 右上角和左下角

border-radius(一个值):四个圆角值相同

border-top-left-radius:定义了左上角的弧度

border-top-right-radius:定义了右上角的弧度

border-bottom-left-radius:定义了右下角的弧度

border-bottom-right-radius:定义了左下角的弧度

box-shadow属性:可以设置一个或多个下拉阴影的框

语法:

box-shadow:h-shadow(水平位置偏移量)允许负值。必写;

v-shadow(处置位置偏移量)允许负值。必写;

blur(模糊距离)可选;

spread(阴影尺寸)可选;

color(阴影颜色)可选;

inset(内部阴影)可选;扩展属性,正值缩小,负值增大

box-shadow: 10px(横向,正值往右,负值往左) 10px(纵向,正值往下,负值网上) 10px(模糊,从边框到内容,完成渐变模糊) 10px(扩展,四周边界往外扩展10px) yellow(阴影颜色)

border-image

属性:使用border-image-*属性来构建美丽的可扩展按钮

语法:border-image:source slice width outset repeat;

兼容性:IE不兼容、Firefox、Chrome、Safari6+、Opera不兼容

-------------------------------------------------

border-image-source属性

border-image-source属性指定要使用的图像,而不是由border-style属性设置的边框样式

语法

border-image-source:none;

border-image-source:url("...");

-------------------------------------------------

border-image-slice属性

border-image-slice属性指定图像的边界向内偏移

语法

border-image-slice:number|%|fill;

-------------------------------------------------

border-image-width属性

brder-image-width属性指定图像边界的宽度

语法

border-image-width:number|%|auto;

-------------------------------------------------

border-image-outset属性

border-image-outset用于指定在边框外部绘制border-image-area的量

语法

border-image-outset:length|number;

-------------------------------------------------

border-image-repeat属性

该属性用于图像边界是否重复(repeated)、拉伸(stretched)或铺满(rounded)

语法:border-image-repeat:stretch|repeat|round|initial|inherit;

我说两种方法哈:

1、上层DIV和img标签都设置border-radius圆角

列:

css如下:

.div1{width:100pxheight:100pxborder:1px solid lightgrayborder-radius:5px}

.div1 img{width:100pxheight:100pxborder-radius:5px}

html如下:

<div class="div1">

<img src="img1.jpg">

</div>

2、img不设置,div设置border-radius圆角并且设置超出部分影藏

css如下:

.div1{width:100pxheight:100pxborder:1px solid lightgrayborder-radius:5pxoverflow:hidden}

html如下:

<div class="div1">

<img src="img1.jpg">

</div>

注意:img标签要设置大小哈,不然图像显示会超出DIV的边界的

问题:css3做圆角右边是圆角左边是直角

解答:注意css改动这里,nav ul li{ float:left margin:0 20px background-color:#999border-radius:10px 0 0 10px -moz-border-radius:10px 0 0 10px font-size:30px}

理解:border-radius属性

1)border-radius:10px等价于:border-top-left-radius:10pxborder-top-right-radius:10pxborder-bottom-right-radius:10pxborder-bottom-left-radius:10px

2)border-radius:1px 2px 3px 4px 等价于:border-top-left-radius:1pxborder-top-right-radius:2pxborder-bottom-right-radius:3pxborder-bottom-left-radius:4px

纠错:您的html代码不全,我补全并修改后的代码如下,请查看~

<!DOCTYPE html>

<html lang="en">

<head>

<meta http-equiv="Content-Type" content="text/html charset=utf-8" />

<title>Apple</title>

<style>

body{ background-color: #F2F2F2}

header {background-color:#333border-radius:10px}

nav{ display:block background-color:#333 width:840px margin:0 50px 0 0 padding:0 10px 20px 5px}

nav ul { list-style:none background-color:#999}

nav ul li{ float:left margin:0 20px background-color:#999border-radius:10px 0 0 10px -moz-border-radius:10px 0 0 10px font-size:30px}

nav ul li a{ color:#FFF text-decoration:none font-size:20px }

nav ul li a:hover{color:#000 text-decoration:none border-bottom:1px solid #ff5400 padding-bottom:2px}

</style>

</head>

<body>

<header>

<nav>

<div>

<ul>

<li><a>Apple</a></li>

<li><a>在线商店</a></li>

<li><a>Mac</a></li>

<li><a>ipod</a></li>

<li><a>iphone</a></li>

<li><a>ipad</a></li>

<li><a>iTunes</a></li>

<li><a>技术支持</a></li>

</ul>

</div>

</nav>

</header>

</body>

</html>