HTML网页设计:CSS渐变、过渡 | 您所在的位置:网站首页 › 网页过度效果 › HTML网页设计:CSS渐变、过渡 |
一、CSS3浏览器前缀
1、-ms- -ms-box-shadow IE浏览器专属的CSS属性需添加-ms-前缀 2、-moz- -moz-box-shadow 所有基于Gecko引擎的浏览器(如Firefox)专属的CSS属性需添加-moz-前缀 3、-o- -o-box-shadow Opera浏览器专属的CSS属性需添加-o-前缀 4、-webkit- -webkit-box-shadow 所有基于Webkit引擎的浏览器(如Chrome、Safari)专属的CSS需添加-webkit-前缀 二、CSS3优雅降级渐进增强渐进增强(Progressive Enhancement):一开始就针对低版本浏览器进行构建页面,完成基本的功能,然后再针对高级浏览器进行效果、交互、追加功能达到更好的体验; .transition { /*渐进增强写法 从小到大*/ -webkit-transition: all .5s; -moz-transition: all .5s; -o-transition: all .5s; transition: all .5s; }优雅降级(Graceful Degradation):一开始就构建站点的完整功能,然后针对浏览器测试和修复。比如一开始使用 CSS3 的特性构建了一个应用,然后逐步针对各大浏览器进行 hack 使其可以在低版本浏览器上正常浏览。 .transition { /*优雅降级写法 从大到小*/ transition: all .5s; -o-transition: all .5s; -moz-transition: all .5s; -webkit-transition: all .5s; } 三、CSS3渐变效果CSS3 Gradient分为linear-gradient(线性渐变)和radial-gradient(径向渐变) CSS3 渐变(gradients)可以让你在两个或多个指定的颜色之间显示平稳的过渡。 以前,你必须使用图像来实现这些效果。但是,通过使用 CSS3 渐变(gradients),你可以减少下载的事件和宽带的使用。此外,渐变效果的元素在放大时看起来效果更好,因为渐变(gradient)是由浏览器生成的。 CSS3 定义了两种类型的渐变(gradients): 线性渐变(Linear Gradients)- 向下/向上/向左/向右/对角方向 径向渐变(Radial Gradients)- 由它们的中心定义 背景的线性渐变:为了创建一个线性渐变,你必须至少定义两种颜色结点。颜色结点即你想要呈现平稳过渡的颜色。同时,你也可以设置一个起点和一个方向(或一个角度)。 1、线性渐变 - 从上到下(默认情况下) #grad { background-image: -webkit-linear-gradient(red, blue); /* Safari 5.1 - 6.0 */ background-image: -o-linear-gradient(red, blue); /* Opera 11.1 - 12.0 */ background-image: -moz-linear-gradient(red, blue); /* Firefox 3.6 - 15 */ background-image: linear-gradient(red, blue); /* 标准的语法 */ }2、线性渐变 - 从左到右 #grad { background: -webkit-linear-gradient(left, red, blue); /* Safari 5.1 - 6.0 */ background: -o-linear-gradient(left, red, blue); /* Opera 11.1 - 12.0 */ background: -moz-linear-gradient(left, red, blue); /* Firefox 3.6 - 15 */ background: linear-gradient(to right, red, blue); /* 标准的语法 */ }3、线性渐变 - 对角 可以通过指定水平和垂直的起始位置来制作一个对角渐变。 下面的实例演示了从左上角开始(到右下角)的线性渐变。起点是红色,慢慢过渡到蓝色: #grad { background: -webkit-linear-gradient(left top, red, blue); /* Safari 5.1 - 6.0 */ background: -o-linear-gradient(left top, red, blue); /* Opera 11.1 - 12.0 */ background: -moz-linear-gradient(left top, red, blue); /* Firefox 3.6 - 15 */ background: linear-gradient(to bottom right, red, blue); /* 标准的语法 */ }4、背景的线性渐变 带有指定的角度的线性渐变 #grad { background: -webkit-linear-gradient(180deg, red, blue); /* Safari 5.1 - 6.0 */ background: -o-linear-gradient(180deg, red, blue); /* Opera 11.1 - 12.0 */ background: -moz-linear-gradient(180deg, red, blue); /* Firefox 3.6 - 15 */ background: linear-gradient(180deg, red, blue); /* 标准的语法 */ }5、背景的径向渐变 带有指定的角度的线性渐变 ,径向渐变由它的中心定义。 为了创建一个径向渐变,你至少定义两种颜色结点。颜色结点即你想要呈现平稳过渡的颜色。同时,你也可以指定渐变的中心、形状(原型或椭圆形)、大小。默认情况下,渐变的中心是 center(表示在中心点),渐变的形状是 ellipse(表示椭圆形),渐变的大小是 farthest-corner(表示到最远的角落)。 径向渐变 - 颜色结点均匀分布(默认情况下) #grad { background: -webkit-radial-gradient(red, green, blue); /* Safari 5.1 - 6.0 */ background: -o-radial-gradient(red, green, blue); /* Opera 11.6 - 12.0 */ background: -moz-radial-gradient(red, green, blue); /* Firefox 3.6 - 15 */ background: radial-gradient(red, green, blue); /* 标准的语法 */ }径向渐变 - 颜色结点不均匀分布 #grad { background: -webkit-radial-gradient(red 5%, green 15%, blue 60%); /* Safari 5.1 - 6.0 */ background: -o-radial-gradient(red 5%, green 15%, blue 60%); /* Opera 11.6 - 12.0 */ background: -moz-radial-gradient(red 5%, green 15%, blue 60%); /* Firefox 3.6 - 15 */ background: radial-gradient(red 5%, green 15%, blue 60%); /* 标准的语法 */ }设置形状,shape 参数定义了形状。它可以是值 circle 或 ellipse。其中,circle 表示圆形,ellipse 表示椭圆形。默认值是 ellipse。 #grad { background: -webkit-radial-gradient(circle, red, yellow, green); /* Safari 5.1 - 6.0 */ background: -o-radial-gradient(circle, red, yellow, green); /* Opera 11.6 - 12.0 */ background: -moz-radial-gradient(circle, red, yellow, green); /* Firefox 3.6 - 15 */ background: radial-gradient(circle, red, yellow, green); /* 标准的语法 */ }6、背景的重复渐变 线性渐变和径向渐变都属于CSS背景属性中的背景图片(background-image)属性。有时候希望创建在一个元素的背景上重复的渐变“模式”。在没有重复渐变的属性之前,主要通过重复背景图像(使用background-repeat)创建线性重复渐变,但是没有创建重复的径向渐变的类似方式。幸运的是,CSS3通过repeating-linear-gradient和repeating-radial-gradient语法提供了补救方法,可以直接实现重复的渐变效果。 A、重复的线性渐变 repeating-linear-gradient() 函数用于重复线性渐变; B、重复的径向渐变 repeating-linear-gradient函数用于重复径向渐变: 四、CSS中背景相关的属性 个数属性含义用法说明1background-clip指定背景的显示范围background-clip:border-box; 默认值 background-clip:padding-box;背景被裁剪到内边距框 background-clip:content-box;背景被裁剪到内容框 -webkit-background-clip:text ; 2background-origin绘制背景图像时的起点background-origin:padding-box 默认值; background-origin:border-box 背景图像相对于边框盒来定位 background-origin:content-box 背景图像相对于内容框来定位 3background-size背景图的大小background-size:200px 100px; 或者 background-size:200% 100%; background-size:cover;把背景图像扩展至足够大,以使背景图像完全覆盖背景区域。背景图像的某些部分也许无法显示在背景定位区域中。 background-size:contain; 保持背景图像本身的宽高比例不变进行缩放。 五、CSS3中Transition过渡属性 个数属性说明1transition-property需要过渡的样式 ,默认是 all2transition-duration运动时间 默认是 0 s 3transition-delay延迟时间 默认是 0 s4transition-timing-function运动形式 默认是 ease A、ease:(慢速开始,然后变快,然后慢速结束) B、 linear:(匀速) C、ease-in:(加速) D、ease-out:(减速) E、ease-in-out:(先加速后减速) F、cubic-bezier 贝塞尔曲线( x1, y1, x2, y2 )http:cubic-bezier.com G、steps() 实现一个关键逐帧动画的功能 |
CopyRight 2018-2019 实验室设备网 版权所有 |