<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">-->CSS3 背景</span>背景原点控制、背景剪切控制、透明背景、渐变背景
一、CSS3 背景
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>背景原点&背景切割</title> <style> *{margin:0;padding:0;list-style: none;} h3{ text-align: center; font-size: 30px; } div{ width:1100px; height:600px; padding:50px; border:20px dashed #ccc; margin:0 auto 50px; background: url(zxj2.jpeg) 0 0 no-repeat; } .box1{ background-origin:border-box; background-clip: border-box;/* 默认值 */ } .box2{ background-origin:padding-box;/* 默认值 */ background-clip: padding-box; } .box3{ background-origin:content-box; background-clip:content-box; } </style> </head> <body> <h3>border-box</h3> <div class="box1"></div> <h3>padding-box</h3> <div class="box2"></div> <h3>content-box</h3> <div class="box3"></div> </body> </html>
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>背景尺寸</title> <style> *{margin:0;padding:0;list-style: none;} h3{ text-align: center; font-size: 30px; color: #666; } div{ width:700px; height:300px; border:20px solid #666; margin:0 auto 50px; background: url(zxj2.jpeg) 0 0 no-repeat; } .box1{ /*length*/ /*background-size:700px 300px;*/ /*percentage*/ background-size:100% 100%; /*background-size:120% 120%;*/ } .box2{ /*cover:等比缩放到完全覆盖容器,背景图像有可能超出容器*/ background-size:cover; } .box3{ /*contain:将背景图像等比缩放到宽度或高度与容器的宽度或高度相 等,背景图像始终被包含在容器内*/ background-size: contain; } </style> </head> <body> <h3>background-size :length</h3> <div class="box1"></div> <h3>background-size :cover</h3> <div class="box2"></div> <h3>background-size :contain</h3> <div class="box3"></div> </body> </html>
background: linear | radial-gradient (起点 , 颜色1 ?百分比%, 颜色2 ?百分比%, ... ,颜色N 100%);
background:radial-gradient(circle at 30% 35%, rgba(255,255,255,1) 0%,rgba(0,0,0,1) 100%);
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>背景渐变</title> <style> *{margin:0;padding:0;list-style: none;} h3{ text-align: center; font-size: 30px; color: #666; } div{ float: left; margin:50px 50px 0 50px; } /* 线性渐变:linear-gradient */ .box1{ width:300px; height:440px; /* 低版本兼容写法 */ background:-webkit-linear-gradient(to bottom,rgba(95,191,140,1) 0%,rgba(194,208,120,1) 50%,rgba(237,148,104,1) 100%); /* W3C标准写法 */ background:linear-gradient(to bottom,rgba(95,191,140,1) 0%,rgba(194,208,120,1) 50%,rgba(237,148,104,1) 100%); } .box2{ width:440px; height:240px; background:linear-gradient(to right,rgba(95,191,140,1) 0%,rgba(194,208,120,1) 50%,rgba(237,148,104,1) 100%); } /* 径向渐变 radial-gradient-->circle 表示圆形,ellipse 表示椭圆形。默认值是 ellipse。*/ .box3{ width:300px; height:300px; border-radius: 50%; background:radial-gradient(circle at center,rgba(255,0,0,1) 0%,rgba(243,166,0,1) 100%); } .box4{ width:300px; height:300px; border-radius: 50%; background:radial-gradient(circle at 23% 23%,#fff 0%,#000 100%); } </style> </head> <body> <div class="box1"></div> <div class="box2"></div> <div class="box3"></div> <div class="box4"></div> </body> </html>
http://www.zi-han.net/css3/
用在线调试工具调试背景颜色-->设置文字渐变:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>渐变文字</title> <style> .txt{ width:600px; margin:20px auto; padding:10px; border:1px solid #666; font-size: 30px; font-weight: bolder; background: -moz-linear-gradient(left, rgba(234,0,50,0.99) 1%, rgba(247,247,0,0.95) 20%, rgba(73,247,46,0.9) 40%, rgba(71,241,54,0.9) 41%, rgba(32,124,202,0.93) 60%, rgba(162,17,252,0.97) 80%, rgba(255,50,81,1) 100%); background: -webkit-linear-gradient(left, rgba(234,0,50,0.99) 1%,rgba(247,247,0,0.95) 20%,rgba(73,247,46,0.9) 40%,rgba(71,241,54,0.9) 41%,rgba(32,124,202,0.93) 60%,rgba(162,17,252,0.97) 80%,rgba(255,50,81,1) 100%); background: linear-gradient(to right, rgba(234,0,50,0.99) 1%,rgba(247,247,0,0.95) 20%,rgba(73,247,46,0.9) 40%,rgba(71,241,54,0.9) 41%,rgba(32,124,202,0.93) 60%,rgba(162,17,252,0.97) 80%,rgba(255,50,81,1) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fcea0032', endColorstr='#ff3251',GradientType=1 ); /*用文字做背景图切割*/ -webkit-background-clip:text; /* 文字设为透明 */ color:transparent; } </style> </head> <body> <div class="txt">的伤口附近可怜的积分少打了快放假了大姐夫可怜的是爱分开都是垃圾费看到类似解放路口的手机覅离开的就是离开房间就打瞌睡了附近可怜的积分少打了快放假了大姐夫可怜的是爱分开都是垃圾费看到类似解放路口的手机覅离开的就是离开房间就打瞌分少打了快放假了大姐夫可怜的是爱分开都是垃圾费看到类似解放路口的手机覅离开的就是离开房间就打瞌睡了附近可怜的积分少打了快放假了大姐夫可怜的是爱分开都是垃圾费看到类似解放路口的手机覅离开的就是离开房间就打瞌</div> </body> </html>
二、CSS3 蒙版
1、蒙版知识点-webkit-mask-image:url | gradient
简写:-webkit-mask:url("04.png") 40px 55px no-repeat;
支持情况:
目前只有webkit浏览器支持mask遮罩层
形状主要控制的是显示区域
颜色对蒙版没有任何的影响透明度为显示图像的透明度
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>蒙版_形状&颜色</title> <style> *{margin:0;padding:0;list-style: none;} div{ border:1px solid #333; float: left; margin:15px; } div img{ display: block; width:300px; height: 300px; } /* 目前只有webkit浏览器支持mask遮罩层 */ .box1 img{ /*分写*/ -webkit-mask-image:url(03.png); -webkit-mask-repeat:repeat; -webkit-mask-position:17px 53px; /*-webkit-mask-position:center center;*/ /*-webkit-mask-position:50% 50%;*/ } .box2 img{ /* -webkit-mask-image:url(04.png); -webkit-mask-repeat:no-repeat; -webkit-mask-position:15px 10px; */ /*合写*/ -webkit-mask:url(04.png) 15px 10px no-repeat; } .box3 img{ /* -webkit-mask-image:url(05.png); -webkit-mask-repeat:no-repeat; -webkit-mask-position:center center; */ -webkit-mask:url(05.png) center center no-repeat; } .box4 img{ /* -webkit-mask-image:url(06.png); -webkit-mask-repeat:repeat; -webkit-mask-position:center center; */ -webkit-mask:url(06.png) center center repeat; } </style> </head> <body> <div class="box1"> <img src="maskbg.jpg" alt=""> <h2>形状一</h2> </div> <div class="box2"> <img src="maskbg.jpg" alt=""> <h2>形状二</h2> </div> <div class="box3"> <img src="maskbg.jpg" alt=""> <h2>形状三</h2> </div> <div class="box4"> <img src="maskbg.jpg" alt=""> <h2>平铺</h2> </div> </body> </html>
2-2关于形状和颜色对于蒙版的影响
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>蒙版_透明度</title> <style> *{margin:0;padding:0;list-style: none;} div{ float: left; margin:15px 80px; } div img{ display: block; width:400px; height: 400px; } /* 目前只有webkit浏览器支持mask遮罩层 */ .box1 img{ -webkit-mask-image:radial-gradient(circle at center center,rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%); -webkit-mask-repeat:no-repeat; -webkit-mask-position:0 0; } .box2 img{ -webkit-mask-image:radial-gradient(circle at center center,rgba(0,0,0,1) 0%,rgba(0,0,0,0) 60%); -webkit-mask-repeat:no-repeat; -webkit-mask-position:0 0; } </style> </head> <body> <div class="box1"> <img src="maskbg.jpg" alt=""> <h2>颜色对蒙版没有任何的影响 </h2> </div> <div class="box2"> <img src="maskbg.jpg" alt=""> <h2>透明度为显示图像的透明度</h2> </div> </body> </html>
渐变中的透明度影响倒影透明度。
书写文本倒影渐变效果:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>倒影</title> <style> html,body{background: #000;} img{ width:500px; height: 300px; margin:300px 400px; /*-webkit-box-reflect:above 0 linear-gradient(to top,rgba(0,0,0,0.02) 0%,rgba(0,0,0,0.8) 60%,rgba(0,0,0,1) 100%);*/ -webkit-box-reflect:right 0 linear-gradient(to top,rgba(0,0,0,0.02) 0%,rgba(0,0,0,0.8) 60%,rgba(0,0,0,1) 100%); /* -webkit-box-reflect:below 0 linear-gradient(to bottom,rgba(0,0,0,0.02) 0%,rgba(0,0,0,0.8) 60%,rgba(0,0,0,1) 100%); */ /* -webkit-box-reflect:left 10px linear-gradient(to left,rgba(0,0,0,0.02) 0%,rgba(0,0,0,0.8) 60%,rgba(0,0,0,1) 100%); */ /* -webkit-box-reflect:right 10px linear-gradient(to right,rgba(0,0,0,0.02) 0%,rgba(0,0,0,0.8) 60%,rgba(0,0,0,1) 100%); */ } h2{ font-size: 40px; color:red; text-align:center; margin-bottom: 100px; -webkit-box-reflect:below 5px linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%) } </style> </head> <body> <img src="zxj3.jpg" alt=""> <h2>CSS3文字倒影效果</h2> </body> </html>
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>蒙版_探照灯</title> <style> *{margin:0;padding:0;list-style: none;} html,body{background: #000;} div{ width:1000px; height:600px; margin:30px auto; } div img{ width:1000px; height:600px; -webkit-mask-image:url(04.png); -webkit-mask-repeat:no-repeat; -webkit-mask-position:0px 0px; } </style> </head> <body> <div> <img src="mask2_tzd.jpg" alt=""> </div> <script type="text/javascript" src="jquery-1.8.3.min.js"></script> <script> var x=0,y=0,flagx=true,flagy=true; setInterval(function(){ if (flagx) { x+=1; if (x>=740) { flagx=false; } }else{ x-=1; if (x<=0) { flagx=true; } } if (flagy) { y+=1; if (y>=340) { flagy=false; } }else{ y-=1; if (y<=0) { flagy=true; } } $('div img').css('-webkit-mask-position',x+'px '+y+'px'); },1) </script> </body> </html>