如何使用css,把div设置为一个椭圆容器,在做html页面开发时,我们一般都是使用div来做容器的,如果你需要一个椭圆形的容器,我们可以使用div来实现的,下面来看一下。......
HTML5模拟手电筒照明效果
HTML5模拟手电筒照明效果
工具/原料
- adobe dreamweaver
方法/步骤
新建html文档。
准备好需要用到的图标。
书写hmtl代码。
svg width="100%" height="100%"
filter id="light">
!-- blur the source image to make bump map less sharp -->
feGaussianBlur stdDeviation="3" result="blurred">/feGaussianBlur>
!-- create bump map based on alpha channel -->
feColorMatrix in="blurred" type="luminanceToAlpha" result="bumpMap">/feColorMatrix>
!-- use bump map for lighting filter -->
feDiffuseLighting in="bumpMap" surfaceScale="3" result="light">
fePointLight x="225" y="150" z="30">/fePointLight>
/feDiffuseLighting>
!-- compose the lighting result with source image using multiplication -->
feComposite in="light" in2="SourceGraphic"
operator="arithmetic"
k1="1" k2="0" k3="0" k4="0">
/feComposite>
/filter>
pattern id="pattern1"
width="450" height="300"
patternUnits="userSpaceOnUse"
>
image xlink:href="img/codepen.jpg"
width="450" height="300"
>/image>
/pattern>
rect width="100%" height="100%"
fill="url(#pattern1)" filter="url(#light)"
>/rect>
/svg>
书写css代码。
style>
html, body {
height: 100%;
margin: 0;
}
svg {
display: block;
}
/style>
书写并添加js代码。
script>
const svgNode = document.querySelector('svg');
const fePointLightNode = svgNode.querySelector('fePointLight');
svgNode.addEventListener('mousemove', handleMove);
svgNode.addEventListener('touchmove', handleMove);
function handleMove(event) {
fePointLightNode.setAttribute('x', event.clientX);
fePointLightNode.setAttribute('y', event.clientY);
}
/script>
代码整体结构。
查看效果。
以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!
标签: HTML
相关文章
- 详细阅读
- 详细阅读
-
HTML5创作工具,MAKA 2.0史上最全操作指南详细阅读
HTML5创作工具,MAKA 2.0史上最全操作指南,超过15000种模板组合。还怕你没有发挥的空间吗?MAKA(中文:码卡)作为中国最早推出移动端卡片式交互模式的创新者,随着HTML5技术的日渐成熟......
2023-03-16 433 HTML