遮罩效果 css3

CSS3提供了遮罩效果,这是以前CSS2中比较难实现的一个新特性,配合SVG或者canvas同样也可以实现遮罩效果,他的效果就如下图所示:

简单的说就是在一个层上面加一个过滤层,过滤层透明度越低,底层就显示的越多,反之,底层显示越少

1. CSS3属性

CSS3中提供的新属性有(括号为跟background对应类似的属性):

-webkit-mask-image:设置遮罩图片地址

-webkit-mask-position: 定义遮罩层的出现位置,可以取值px或百分比,也可以指定为 top left right 和bottom

像素(px)

 (1)如果只指定一个值(例如-webkit-mask-position:10px),第二个值就会被默认为'center'效果如-webkit-mask-position:10px center

 (2)如果指定两个值(-webkit-mask-position:10px 10px),第一个值就是横坐标的偏移或定位,第二个值就是纵坐标的偏移或定位,px指定遮罩图片的左上角对应于影响区域的左上角,所谓影响区域就是被遮罩图片遮罩的区域,也就是遮罩图片的大小

 (3)如果指定三个值,那么每个px之前必须指定一个方向(top,left,bottom,right),例如:mask-position: bottom 10px right 20px 指定了距离底部10px,距离右边20px,如果指定了3个方向,默认值为0

例如:

 mask-position: left 10px top 15px;   /* 10px, 15px */mask-position: left      top     ;   /*  0px,  0px */mask-position:      10px     15px;   /* 10px, 15px */mask-position: left          15px;   /*  0px, 15px */mask-position:      10px top     ;   /* 10px,  0px */mask-position: left      top 15px;   /*  0px, 15px */mask-position: left 10px top     ;   /* 10px,  0px */

 

 百分比(%)

  百分比设置了遮罩图片横坐标和纵坐标的偏移百分比,注意偏移包括对遮罩原图片大小的偏移,也包括遮罩图片本身的偏移,例如-webkit-mask-position:75% 50%的偏移如图:

 指定值:

top: 如果指定1或2个值则代表纵坐标0%,否则是指定距离上边的偏移量
right: 如果指定1或2个值则代表横坐标100%,否则是指定距离右边的偏移量
bottom: 如果指定1或2个值则代表纵坐标100%,否则是指定距离下边的偏移量
left: 如果指定1或2个值则代表横坐标0%,否则是指定距离左边的偏移量
center:代表50% 

body { mask: url("banner.jpeg") right top }    /* 100%   0% */
body { mask: url("banner.jpeg") top center }   /*  50%   0% */
body { mask: url("banner.jpeg") center }       /*  50%  50% */
body { mask: url("banner.jpeg") bottom }       /*  50% 100% */

-webkit-mask-position-x: [ percentage | length | left | center | right ] 定义遮罩层的出现位置的横坐标
-webkit-mask-position-y: [ percentage | length | top | center | bottom ] 定义遮罩层的出现位置的纵坐标

-webkit-mask-clip: border | padding | content | text 定义图片遮罩延伸到的位置

 

border图片遮罩延伸到元素border
padding图片遮罩延伸到元素padding
content图片遮罩延伸到元素内容部分
text图片遮罩延伸到元素文字部分

 

-webkit-mask-composite 定义同一个元素上有多个图片遮罩时的相对顺序

 

clear源图片和目标图片重叠的像素被清除
copy源图片替代目标图片
source-over源图片呈现在目标图片上
source-in源图片和目标图片重叠的像素被源图片替代,其他像素被清除
source-out源图片和目标图片重叠的像素被清除,源图片剩下的像素被呈现
source-atop目标图片被呈现。只有在重叠像素在目标图片的不透明部分时,源图片被呈现。这导致源图片不起作用
destination-over目标图片呈现在源图片上
destination-in源图片和目标图片的重叠像素中,属于源图片的保留,其他像素被清除
destination-out图片和目标图片的重叠像素被清除,源图片剩余的像素被展示
destination-atop源图片的像素被展示。只有在重叠部分在目标图片的不透明时。目标图片被呈现。这导致目标图片不起作用
xor如果源图片与目标图片都透明时,重叠像素全变为透明

 例如:  

         #demo{width:930px;height:768px;margin: 50px auto;font-size: 20px;font-weight: bold;color:red;background:url(back.jpg) no-repeat;-webkit-mask-image:url(mask1.png),url(mask2.png);-webkit-mask-repeat:no-repeat;    }

mask.png为源图片,mask2为目标图片

 

-webkit-mask-box-image 定义图片遮罩的滚动特性.

 

uri图片路径
gradient用-webkit-gradient函数生成遮罩图(mask image)
none没有遮罩图片
top图片离上边缘的距离
right图片离右边缘的距离
bottom图片离底边缘的距离
left图片离左边缘的距离
x_repeat水平方向的重复,取值:repeat | stretch | round
y_repeat垂直方向的重复,取值:repeat | stretch | round

 

-webkit-mask-origin 定义-webkit-mask-position值得起始位置.

 

padding默认值,从padding开始计算-webkit-mask-position的值
border从border开始计算-webkit-mask-position的值
content从元素内容部分开始计算-webkit-mask-position的值

 

-webkit-mask-repeat 定义遮罩层的出现位置

 

repeat遮罩图片水平、垂直方向都重复
repeat-x遮罩图片只在水平方向重复
repeat-y遮罩图片只在垂直方向重复
space遮盖图像重复的次数使其可容纳在背景放置区域中,同时不经过裁剪,图像将拉开间隔以填满区域。
round遮盖图像经过缩放,以便可放下整数个该图像
no-repeat遮罩图片不重复

 

-webkit-mask-size 定义遮罩层的大小

 

auto继承遮罩图的宽度和高度
contain放大图像到最大的尺寸,同时保持原有的图像纵横比,使得宽高完全地适应背景位置区域
cover缩放图像到最小的尺寸,同时保持原有的图像纵横比,使得宽高完全地覆盖背景位置区域
length浮点数,后跟绝对单位符(cm, mm, in, pt, pc)或者相对单位符 (em, ex, or px)
percentage整数,后跟百分号,百分比的值和背景位置区域有关系。


-webkit-mask-attachment: fixed | scroll 图片滚动方式 fixed 不滚的 scroll滚动

 

2. 配合animation:css3的animation可以实习样式的动态变化,通过设置animation可以实现探照灯效果:

 

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta charset="utf-8">
<title>探照灯例子</title>
<style>
body {font-size: 13px;background-color: #000;
}
.demo {-webkit-animation: demo-an2 5s ease-out infinite;border-radius: .4em;color: #FFFF;margin: 1em;    font-size:4em;font-weight:bold;text-align: center;text-shadow: 1px 1px 0 #ccc;    -webkit-mask: -webkit-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 10%, rgba(0,0,0,0) 20%) -500px 0 no-repeat content;width: 16em;
}
@-webkit-keyframes demo-an {
to {
-webkit-mask-position:600px 0;
}
}
</style>
</head>
<body>
<div class="demo">腾讯财付通,会支付会生活</div>
</body></html>

  

转载于:https://www.cnblogs.com/zhusheng2008/p/4102691.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/376467.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

配置SQLServer,允许远程连接

需要别人远程你的数据库&#xff0c;首先需要的是在一个局域网内&#xff0c;或者连接的是同一个路由器&#xff0c;接下来就是具体步骤&#xff1a; &#xff08;一&#xff09;首先是要检查SQLServer数据库服务器中是否允许远程链接。其具体操作为&#xff1a; &#xff08;1…

聚类算法初探(八)数据尺度化问题

文中尺度化的一些具体公式可参见 http://blog.csdn.net/itplus/article/details/10088101 其他相关链接 引言 预备知识 直接聚类法 K-means DBSCAN OPTICS 聚类分析的效果评测 作者: peghoty 出处: http://blog.csdn.net/itplus/article/details/10484553 欢迎转载/分享, 但请…

【待完善】make: command not found,以及libtool.m4 and ltmain.sh have a version mismatch问题的解决方案...

之前为了使用一个库&#xff0c;都是去下载源码&#xff0c;然后根据开发者提供的README手动用GCC编译&#xff0c;一直不能使用Makefile感觉很蛋痛&#xff0c;比如最近使用的ZThread 还是怪自己以前过于依赖IDE 最近发现用Cygwin就可以使用诸如./configure, make这样的命令&a…

菜鸟nginx源码剖析

菜鸟nginx源码剖析 配置与部署篇&#xff08;一&#xff09; 手把手配置nginx “I love you” TCMalloc 对MYSQL 性能 优化的分析 菜鸟nginx源码剖析系列文章解读 Author&#xff1a;Echo Chen&#xff08;陈斌&#xff09; Email&#xff1a;chenb19870707gmail.com Blog&…

微信公众平台开发(59)相册

微信公众平台开发 微信公众平台开发模式 企业微信公众平台 万能相册 3G相册作者&#xff1a;方倍工作室 地址&#xff1a;http://www.cnblogs.com/txw1958/p/weixin-59-albums.html 相册(Photo album)又称影集或照片集&#xff0c;是用来装放相片的物品。相册主要用来收藏和保…

hadoop学习笔记:zookeeper学习(上)

在前面的文章里我多次提到zookeeper对于分布式系统开发的重要性&#xff0c;因此对zookeeper的学习是非常必要的。本篇博文主要是讲解zookeeper的安装和zookeeper的一些基本的应用&#xff0c;同时我还会教大家如何安装伪分布式&#xff0c;伪分布式不能在windows下实现&#x…

160 - 21 Cabeca

环境&#xff1a; Windows xp sp3 工具&#xff1a; exeinfope ollydbg 查壳&#xff1a; 拿到程序后查壳&#xff0c;发现程序无壳&#xff0c;为Delphi写的。 程序长成这个样 输入&#xff1a; Name:GNUBD Serial&#xff1a;1234567 Serial&#xff1a;76543…

160 - 22 CarLitoZ.1

环境 Windows xp sp3 工具 exeinfope Ollydbg 查壳 无壳的VB程序 测试 输入“1234567” 显示这个&#xff1a; 直接OD载入字符串搜索。 00402D20 > \55 push ebp 00402D21 . 8BEC mov ebp,esp 00402D23 . 83EC 0C sub e…

实战MEF(4):搜索范围

在前面的文章中&#xff0c;几乎每个示例我们都会接触到扩展类的搜索位置&#xff0c;我们也不妨想一下&#xff0c;既然是自动扩展&#xff0c;它肯定会有一个或者多人可供查找的位置&#xff0c;不然MEF框架怎么知道哪里有扩展组件呢&#xff1f; 就像我们用导航系统去查找某…

Android应用程序请求SurfaceFlinger服务创建Surface的过程分析

文章转载至CSDN社区罗升阳的安卓之旅&#xff0c;原文地址&#xff1a;http://blog.csdn.net/luoshengyang/article/details/7884628 前面我们已经学习过Android应用程序与SurfaceFlinger服务的连接过程了。连接上SurfaceFlinger服务之后&#xff0c;Android应用程序就可以请求…

160 - 23 Chafe.1

环境 Windows xp sp3 工具 exeinfope ollydbg 查壳 用exeinfoe查壳 测试 可以从左下角状态栏看出serial是无效的 直接OD载入字符串搜索 00401274 |. /75 17 jnz XChafe_1.0040128D 00401276 |. |6A 00 push 0x0 ; /Ti…

160 - 24 Chafe.2

环境&#xff1a; Windows xp sp3 工具 exeinfope OllyDBG 查壳 用exeinfope查壳&#xff0c;发现是没有壳的。 测试 可以看出是从红色框框里面的内容判断serial是否有效 OD载入&#xff0c;字符串搜索可以得到&#xff1a; 004011EC . 55 pus…

十个利用矩阵乘法解决的经典题目

转载自 Matrix67: The Aha Moments 好像目前还没有这方面题目的总结。这几天连续看到四个问这类题目的人&#xff0c;今天在这里简单写一下。这里我们不介绍其它有关矩阵的知识&#xff0c;只介绍矩阵乘法和相关性质。 不要以为数学中的矩阵也是黑色屏幕上不断变化的绿色…

160 - 25 CodeZero.1

环境 Windows xp sp3 工具 exeinfope OllyDBG 查壳 无壳的VB程序 测试 运行程序后出现Nag窗口&#xff0c;所以这次的目标是除Nag窗口和找到serial 程序运行后弹出Nag窗口&#xff0c;并且等待5秒后按钮的标题改成“Continue..”&#xff0c;点击后才会弹出输入seria…

WP8开发学习笔记动态修改启动时导航的第一个页面(如登录前启动页为LoginPage,登录后变为MainPage)...

很多时候我们需要在启动程序的时候根据状态改变初始导航页面&#xff0c;比如程序在启动的时候判断用户是否登录&#xff0c; 如果未登录则跳转到LoginPage.xaml否则跳转到MainPage界面。 这时候就要分析程序的启动和导航的过程。 程序的启动是App.xamlcs负责的。 App类的构造器…

6.数组和Hash表

当显示多条结果时&#xff0c;存储在变量中非常智能&#xff0c;变量类型会自动转换为一个数组。 在下面的例子中&#xff0c;使用GetType()可以看到$a变量已经不是我们常见的string或int类型&#xff0c;而是Object类型&#xff0c;使用-is操作符来判断是否是个数组&#xff0…

160 - 26 Colormaster

环境 Windows xp sp3 查壳 无壳的VB程序 测试&#xff1a; 输入 Name:123456 Serial:12345 字符串搜索&#xff0c;找到判断位置。 判断Name的长度要大于等于5&#xff1a; 00402CBC . 33C9 xor ecx,ecx 00402CBE . 83F8 04 cmp eax,0x4 00…

Android 菜单(OptionMenu)大全 建立你自己的菜单

菜单是用户界面中最常见的元素之一&#xff0c;使用非常频繁&#xff0c;在Android中&#xff0c;菜单被分为如下三种&#xff0c;选项菜单&#xff08;OptionsMenu&#xff09;、上下文菜单&#xff08;ContextMenu&#xff09;和子菜单&#xff08;SubMenu&#xff09;&#…

160 - 27 Cosh.1

环境 Windows XP sp3 工具 exeinfope ollydbg 查壳 无壳的MFC程序 测试 弹出这个&#xff1a; 是一个CD-CHECK保护的程序。 字符串搜索&#xff0c;一下子就能来到这里&#xff1a; 0040121A . 68 9C304000 push Cosh_1.0040309C …

160 - 28 CoSH.2

环境 Windows xp sp3 工具 exeinfope ollydbg 查壳 无壳的MFC程序 测试 输入 Nmae:123456 Serial:12345 点击“CHECK”后弹出错误提示的消息框&#xff0c;然后程序自己结束掉 依然是字符串搜索&#xff1a; 004014DB . 8B1D FC214000 mov ebx,dword ptr ds…