您现在的位置是:网站首页> 编程资料编程资料
CSS裁剪属性clip使用的实例教程CSS中的clip-path区域裁剪属性使用教程浅谈css中的clip裁剪用法
2023-10-22
272人已围观
简介 这篇文章主要介绍了CSS裁剪属性clip使用的实例教程,文中对于其辅助雪碧图定位等方面的运用作了详细的说明,需要的朋友可以参考下
CSS裁剪clip这个属性平时用的不多,但其实它并不是CSS3的新属性,很早就开始出现了。本文将介绍关于clip属性的相关知识
定义
一个绝对定位或固定定位元素通过使用属性clip可以改变剪裁区域的形状,但并不改变元素本身的宽高属性
clip
值: rect(top,right,bottom,left) | auto | inherit
初始值: auto
应用于: 绝对定位或固定定位元素
继承性: 无
[注意]默认值auto表示元素的内容不应剪裁
rect
clip:rect(top,right,bottom,left)中的值不是边偏移,而是距元素左上角的距离。具体来说,就是top和bottom是表示距离元素上边界的距离;left和right是距离元素元素左边界的距离。这里元素的边界指元素边框外侧。
rect(...)的语法与CSS的其他语法相比不太一样。原因是它基于早期的定位草案,而该草案使用了左上偏移机制。在CSS2之前,实现这个语法的IE已经成为完备推荐,于是标准从边偏移修改成适用这个实现。但是,这意味着如果高度和宽度没有明确定义,将无法设置一致的剪裁区域。
[注意]IE7-浏览器不支持rect(top,right,bottom,left),支持的写法是rect(top right bottom left);而其他浏览器两种写法都支持
clip:rect(...)只允许长度值和auto,不允许有百分数。如果设置为auto,则相当于将剪裁边界设置为适当的内容边界。对于top或left设置auto,相当于值为0;对于right或bottom设置auto,相当于值为水平方向的宽度和或垂直方向的高度和
[注意]该元素水平方向或垂直方向的clip区域的边界是外框外侧,不包括outline
应用
1.隐藏效果
当clip:rect(top,right,bottom,left)中的top>=bottom,或者left>=right时,可实现元素的隐藏效果,效果类似于visibility:hidden;
2.雪碧图定位
css sprite
定义:css sprite是一种网页图片应用处理方式,它允许将一个页面涉及到的所有零星图片都包含到一张大图中
优点:
[1]减少http请求次数
[2]减少图片大小,提升网页加载速度 (多张图片加载速度小于拼合成的图片的加载速度)
缺点:
[1]提高开发成本
[2]提高维护成本
它能合并的只能是用于背景的图片:
[1]对于设置的图片,是不能合并到大图的,如果合并这些图片会影响页面可读性,语义化降低且可调整的范围小。
[2]对于横向和纵向都平铺的图片,也不能使用css cprite,如果是横向平铺的,只能将所有横向平铺的图合并成一张大图,只能竖直排列,不能水平排列;如果是纵向平铺的,我们只能将所有纵向平铺的图合并成一张大图,只能水平排列,不能竖直排列。
css sprite允许将一个页面涉及到的所有零星图片都包含到一张大图中,然后利用background-position来显示应该显示的区域。
而如果使用clip也可以实现同样的效果。
- div{
- height:128px;
- overflow: hidden;
- }
- img{
- position:absolute;
- background-color: rgba(0,255,0,0.5);
- clip:rect(0,auto,128px,0);
- }
- img:hover{
- margin-top: -128px;
- clip:rect(128px,auto,auto,0);
- }
src="http://7xpdkf.com1.z0.glb.clouddn.com/sofa_sprite.png" alt="测试图片">

3.歌词演示效果
利用clip和background-clip实现歌词演示效果,实际上通过改变宽度也可以实现,主要用于拓展思路。
- @keyframes loop{
- 0%{
- clip:rect(0,0px,100px,0);
- }
- 100%{
- clip:rect(0,520px,100px,0);
- }
- }
- .show,.con{
- width: 520px;
- height: 100px;
- line-height: 100px;
- font-size: 30px;
- position:absolute;
- background-color: lightgreen;
- }
- .con{
- animation: loop 6s linear infinite;
- -webkit-background-clip: text;
- color: red;
- }
- "show">我曾经跨过山和大海,也穿过人山人海
- "con">我曾经跨过山和大海,也穿过人山人海
相关内容
- div+CSS制作类似微信对话气泡效果的实例总结DIV+CSS 清除浮动常用方法总结CSS教程之div垂直居中的多种方法关于div与>div的区别小结Divxdra1031.Dll图片溢出div问题的快速解决方法推荐如何让一个div居于页面正中间【实现方法】css三种方法实现div在浏览器水平居中一个div在浏览器水平居中的实现方法两个div叠加触发事件发生闪烁问题的解决方法
- 使用CSSgram来实现类似Instagram上的简单的滤镜效果HTML5+CSS3实现的图片多种滤镜特效源码使用CSS3配合IE滤镜实现渐变和投影的效果CSS滤镜实现的颜色渐变翻转效果 css 滤镜效果主要对HTML标记设置滤镜效果CSS中filter滤镜的学习笔记(静态滤镜及动态滤镜)HTML5+CSS3实现的鼠标滑过图片滤镜动画特效源码jQuery与CSS3实现相册图片滤镜效果浏览插件源码 滤镜使用之图片透明的css写法css滤镜兼容浏览器测试实例IE滤镜与CSS3效果(详细整理分享)
- CSS制作箭头图标代码(圆,三角形,椭圆) 详解CSS3 用border写 空心三角箭头 (两种写法)DIV+CSS实现带三角箭头的提示框 纯CSS绘制三角形箭头图案技术解析纯CSS绘制三角形箭头效果css实现的交互小三角箭头图标通过CSS边框实现三角形和箭头的实例代码
- 深入剖析CSS弹性盒模型flex实例讲解CSS3中的box-flex弹性盒属性布局CSS3弹性盒模型flex box快速入门心得(必看篇)CSS弹性盒模型flex在布局中的应用详解几个CSS3的flex弹性盒模型布局的简单例子演示基础的CSS3弹性盒Flexbox布局使用实例css3弹性盒模型(Flexbox)详细介绍css flex 弹性布局详解
- 全民英雄两个宠物效果能叠加吗_手机游戏_游戏攻略_
- 天天飞车阿瑞斯和阿波罗对比分析_手机游戏_游戏攻略_
- 放开那三国奶妈哪个好 最强奶妈推荐_手机游戏_游戏攻略_
- 全民英雄 返利卡使用方法_手机游戏_游戏攻略_
- 放开那三国限时神将活动刷左慈武将方法_手机游戏_游戏攻略_
- 全民飞机大战刷金币刷分2月27日最新辅助教程攻略_手机游戏_游戏攻略_
