查看: 256|回复: 30

[活动] 【凡哥教程第八讲作业之一】【花简静】木兰柴(众多子元素的联动控制)

[复制链接]
一叶知秋 版主勋章 山高为峰 山外有山 樱果相依 24 46 47 48 闲花落
发表于 2024-7-28 19:34 | 显示全部楼层 |阅读模式
本帖最后由 花简静 于 2024-7-28 22:24 编辑

评分

6

查看全部评分

点评
回复

使用道具

一叶知秋 版主勋章 山高为峰 山外有山 樱果相依 24 46 47 48 闲花落
 楼主| 发表于 2024-7-28 19:34 | 显示全部楼层
<!-- 第一部分 :css代码 -->   <style> /* 帖子容器id选择器 */ #mydiv {     position: relative;     margin: 30px 0 30px calc(50% - 931px);     width: 1700px;     height: 900px;     background: url('https://pic.imgdb.cn/item/66a62b9cd9c307b7e9c9a138.webp') no-repeat center/cover;     overflow: hidden; }   /* 小播class选择器 */ .player {     position: absolute;     bottom: 40px;     width: 120px;     height: 120px;     opacity: .7;     cursor: pointer;     mix-blend-mode: screen;     animation: rot 8s linear infinite var(--state); } .player:nth-of-type(3) { width: 130px;height: 130px;right: 558px;bottom:60px; } /* 对标的 img 标签排在帖子中第3位 */ .player:nth-of-type(4) {border-radius: 50%;width: 95px;height: 95px; right: 296px;bottom:67px; } /* 对标的 img 标签排在帖子中第4位 */ .player:nth-of-type(5) {border-radius: 50%;width: 72px;height: 72px; right: 66px;bottom:127px; } /* 对标的 img 标签排在帖子中第5位 */   /* 飞鹰图片选择器 */ .bird {     position: absolute;     right: 280px;     top: 300px; -webkit-mask: linear-gradient(0deg,transparent,red 20% );/* 这是第一个人物图片,裙边加了个羽化效果,如果不需要可以删掉 */ } .bird:nth-of-type(2) {mix-blend-mode: screen;right: -100px;top: 120px; animation: fly 10s linear infinite var(--state);} /* 对标的 img 标签排在帖子中第2位 :提前2秒执行动画 */     /* 视频class选择器 */ .vid {     position: absolute;     bottom: 0;     width: 200px;     height: 200px;     object-fit: cover;     border-radius: 50%;     pointer-events: none;     opacity: 1;     mix-blend-mode: screen; } .vid:nth-of-type(1) { width: 193px;height: 193px;left: 221px; bottom:169px;} /* 对标的 video 标签排在帖子中第1位 */ .vid:nth-of-type(2) { width: 293px;height: 291px;left: 215px; top:53px; filter: hue-rotate(170deg);} /* 对标的 video 标签排在帖子中第2位 */ .vid:nth-of-type(3) { width: 173px;height: 163px;left: 612px; bottom:100px; } /* 对标的 video 标签排在帖子中第2位 */ @keyframes rot { to { transform: rotate(360deg); } } @keyframes fly { to { right: 1600px; } } </style>   <!-- 第二部分 :html代码 父元素带9个子元素 --> <div id="mydiv">     <audio id="aud" src="https://music.163.com/song/media/outer/url?id=554533308" autoplay loop></audio>     <video class="vid" src="https://img.tukuppt.com/video_show/7165162/00/20/67/5f33b039ec172.mp4" autoplay loop muted></video>     <video class="vid" src="https://img.tukuppt.com/video_show/2418175/00/02/29/5b549aa7d9d73.mp4" autoplay loop muted></video>     <video class="vid" src="https://img.tukuppt.com/video_show/2405179/00/02/42/5b5fca1e49229.mp4" autoplay loop muted></video>     <img class="bird" alt="" src="https://pic.imgdb.cn/item/64a6bf971ddac507cc8e8bc1.gif" />     <img class="bird" alt="" src="https://pic.imgdb.cn/item/62479cbe27f86abb2adbb9bd.gif" />     <img class="player" alt="" src="https://pic.imgdb.cn/item/6598d139871b83018a7e2714.gif" title="播放/暂停" />     <img class="player" alt="" src="https://pic.imgdb.cn/item/658f974ac458853aef249938.gif" title="播放/暂停" />     <img class="player" alt="" src="https://pic.imgdb.cn/item/64d72ecd1ddac507cc41a985.gif" title="播放/暂停" /> </div>   <!-- 第三部分 :JS代码 -->   <script> //声明并获取待控制的元素集合变量 : vids 视频、players 小播、birds 图片飞鹰 var vids = mydiv.querySelectorAll('.vid'),     players = mydiv.querySelectorAll('.player'),     birds = mydiv.querySelectorAll('.bird');   //联动控制函数 var mState = () => {     mydiv.style.setProperty('--state', aud.paused ? 'paused' : 'running');     vids.forEach(vid => aud.paused ? vid.pause() : vid.play());     players.forEach(player => player.title = aud.paused ? '播放' : '暂停'); };   //audio空间三个监听事件 aud.oncanplay = aud.onplaying = aud.onpause = () => mState();   //小播点击事件 players.forEach(player => player.onclick = () => aud.paused ? aud.play() : aud.pause()); </script>

评分

3

查看全部评分

点评
回复

使用道具

一叶知秋 版主勋章 山高为峰 山外有山 樱果相依 24 46 47 48 闲花落
 楼主| 发表于 2024-7-28 19:35 | 显示全部楼层
本帖最后由 花简静 于 2024-7-28 20:06 编辑

第八讲是多个子元素联动。。教程中结构清楚,层次分明,老师写的说明又很细致,在控制方面看得更加清晰。

说说我这贴子画面结构:
左边三个是属于视频类.vid 。(用的是熊猫家的视频)
右边三个是属于小播.player,(用的是之前收集的GIF动图)
飞鸟和人物属于飞鹰图片类.bird(也用的是收集的GIF动图)

再说代码:
第一CSS部分:
一一对应要做好,老师排的数字和后面的说明一定要看。这里是调整了图片和对应的大小,位置。。。
人物裙摆处有硬边,就加了个线性渐变,有点羽化的效果。代码34行是这一句:-webkit-mask: linear-gradient(0deg,transparent,red 20%  );
飞鸟给了从右往跑的动态,代码36行。人物取消了这个动态。
删除一只飞鸟,增加一个视频和一个小播,所以数字相应有改变。

第二html部分:还是一一对应。
第三js部分(二话不说,照抄)

评分

2

查看全部评分

点评
回复

使用道具

一叶知秋 版主勋章 山高为峰 山外有山 樱果相依 24 46 47 48 闲花落
 楼主| 发表于 2024-7-28 19:35 | 显示全部楼层
本帖最后由 花简静 于 2024-7-28 20:14 编辑

凡哥教程第八讲作业:
试着想一想:如果需要添加成百上千的子元素,我们也得这样写CSS和HTML代码吗?


回答问题:
计算机就是为了快速处理成百上千重复的工作才发明的。。。老师是不是要用函数?一个公式搞定它们。

答错了就

评分

1

查看全部评分

点评
回复

使用道具

『默然守候』
一叶知秋 海洋之心 蝴蝶精灵 山间红叶 花漫千山 江湖之上 音画同行 中秋月圆 欢度国庆 雪花精灵 桃花朵朵 山高为峰 山外有山 猪事顺利 一生安柠 青恬时光 幸福莓满 心想事橙 桃气满满 梅开颜笑 心若葡提 大吉大荔 樱果相依 喜上莓梢 菜源滚滚 24 46 47 48 小青龙
发表于 2024-7-28 19:37 | 显示全部楼层
静宝这作业感觉好复杂啊
点评
回复

使用道具

『默然守候』
一叶知秋 海洋之心 蝴蝶精灵 山间红叶 花漫千山 江湖之上 音画同行 中秋月圆 欢度国庆 雪花精灵 桃花朵朵 山高为峰 山外有山 猪事顺利 一生安柠 青恬时光 幸福莓满 心想事橙 桃气满满 梅开颜笑 心若葡提 大吉大荔 樱果相依 喜上莓梢 菜源滚滚 24 46 47 48 小青龙
发表于 2024-7-28 19:38 | 显示全部楼层
不知道能不能完成作业,看到静宝的作业一脸懵,不知怎么做才好
点评
回复

使用道具

『默然守候』
一叶知秋 海洋之心 蝴蝶精灵 山间红叶 花漫千山 江湖之上 音画同行 中秋月圆 欢度国庆 雪花精灵 桃花朵朵 山高为峰 山外有山 猪事顺利 一生安柠 青恬时光 幸福莓满 心想事橙 桃气满满 梅开颜笑 心若葡提 大吉大荔 樱果相依 喜上莓梢 菜源滚滚 24 46 47 48 小青龙
发表于 2024-7-28 19:40 | 显示全部楼层
静宝你太厉害了,我去捯饬捯饬吧
点评
回复

使用道具

『默然守候』
一叶知秋 海洋之心 蝴蝶精灵 山间红叶 花漫千山 江湖之上 音画同行 中秋月圆 欢度国庆 雪花精灵 桃花朵朵 山高为峰 山外有山 猪事顺利 一生安柠 青恬时光 幸福莓满 心想事橙 桃气满满 梅开颜笑 心若葡提 大吉大荔 樱果相依 喜上莓梢 菜源滚滚 24 46 47 48 小青龙
发表于 2024-7-28 19:41 | 显示全部楼层
欣赏静宝带来的精美作品,祝宝周末快乐!
点评
回复

使用道具

一叶知秋 版主勋章 山高为峰 山外有山 樱果相依 24 46 47 48 闲花落
 楼主| 发表于 2024-7-28 19:44 | 显示全部楼层
雨声 发表于 2024-7-28 19:38
不知道能不能完成作业,看到静宝的作业一脸懵,不知怎么做才好


先试试吧http://qslt.net/data/attachment/ ... dllar.jpg.thumb.jpg
这个是原图
云笛 2024-7-28 22:22
回复
我都是先看了你的原图 再对应代码再看,才能知道你具体加了些啥元素内容在里边   
花简静 2024-7-28 22:28
回复
哈哈,一样的,都是这样边看边学的。。
回复

使用道具

一叶知秋 版主勋章 山高为峰 山外有山 樱果相依 24 46 47 48 闲花落
 楼主| 发表于 2024-7-28 19:45 | 显示全部楼层
雨声 发表于 2024-7-28 19:40
静宝你太厉害了,我去捯饬捯饬吧

抱个抱个,这个多图联动,的确不好整。。
全部一样的图片,就很死板
就换了一些图片。。
结果就成这样了
点评
回复

使用道具

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|千山论坛

GMT+8, 2024-9-20 10:39

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表