马赛克的原理是什么?

html-css09

马赛克的原理是什么?,第1张

不知道你说的马赛克是什么样的效果。

搜索了一下。有下面这个解释。

因为所有的图片都是放在一个容器标签内的,然后这个容器的宽度是固定死的,然后给这个容器的css的overflow样式设置为hidden了,超出这个容器的部分 不显示,只是不显示,不代表不存在。

希望对你能有所帮助。

1.首先,看一下HTML,一个img图像控件和一个带有样式的div,其中包含文本。这个就是蒙版遮罩层。

2.然后,查看样式定义。先检查图像容器和图像样式,如图所示。其中要注意的是img_container样式里定义了position:relative,这个主要是为了遮罩层做绝对定位做准备的。

3.接着,查看遮罩层的样式定义。该代码如图所示。

背景:rgba(0,0,0,0.7);

可以通过修改以下数字0.7来更改透明度。 1是完全不透明的,0是完全透明的。

4.随后,添加用于鼠标移动的脚本代码以显示遮罩层。该js代码是用jquery编写的,既方便又简单,因此首先介绍jquery脚本库。

5.然后,添加mouseover和mouseout事件,主要是当鼠标移到图像容器时显示遮罩层,并在鼠标移出时隐藏遮罩层。

6.刷新页面,可以看到页面上显示的普通图片。

7.最后,可以看到当鼠标放在图片上时,将显示遮罩层。

刚好,我曾经做过这个功能,和你分享下。

黑白照片 filter: gray

X光照片 filter: Xray

风动模糊 filter: blur(add=true,direction=45,strength=30)

正弦波纹 filter: Wave(Add=0, Freq=60, LightStrength=1, Phase=0, Strength=3)

半透明效果 filter: Alpha(Opacity=50)

线型透明 filter: Alpha(Opacity=0, FinishOpacity=100, Style=1, StartX=0, StartY=0, FinishX=100, FinishY=140)

放射透明 filter: Alpha(Opacity=10, FinishOpacity=100, Style=2, StartX=30, StartY=30, FinishX=200, FinishY=200)

白色透明 filter: Chroma(Color=#FFFFFF)

降低色彩 filter: grays

底片效果 filter: invert

左右翻转 filter: fliph

垂直翻转 filter: flipv

投影效果 filter:progid:dXImageTransform.Microsoft.DropShadow(color=#cccccc,offX=5,offY=5,positives=true)

马赛克 filter:progid:dXImageTransform.Microsoft.Pixelate(maxsquare=3)

发光效果 filter:progid:dXImageTransform.Microsoft.Glow(color=#cccccc,Strength=5)

柔边效果 filter:alpha(opacity=100, finishOpacity=0,style=2

我的示范代码:

<div id="bgDiv" style="position:absolutetop:0background-color:#777display:nonefilter: Alpha(Opacity=10, FinishOpacity=50, Style=2, StartX=30, StartY=30, FinishX=200, FinishY=200)opacity:0.6left:0z-index:10000"></div>

希望对你有帮助