镁铝给你一片天
本帖最后由 加林森 于 2022-1-30 11:48 编辑 <br /><br /><style type="text/css">.picMain {
margin: auto;
width: 720px;
position: relative;
background: linear-gradient(45deg, olive, green, silver, white, transparent);
padding: 10px;
box-shadow: 2px 2px 4px 1px rgba(0,0,0,.6);
display: flex;
flex-direction: row;
gap: 8px;
}
.picBox { flex-grow: 2; cursor: pointer; }
.picMini {
width: 150px;
display: flex;
flex-direction: column;
gap: 8px;
}
.picBox img {
width: 570px;
height: 730px;
object-fit: cover;
}
.picMini img {
width: 120px;
height: 140px;
border-radius: 50%;
opacity: .5;
cursor: pointer;
}
.picMini img:hover { opacity: 1; border-radius: 0;}
</style>
<div class="picMain">
<div class="picMini" id="picMini">
<img id="img1" onclick="showpic('img1')" src="https://638183.freep.cn/638183/Pic/2022/1.jpg" alt="" />
<img id="img2" onclick="showpic('img2')" src="https://638183.freep.cn/638183/Pic/2022/2.jpg" alt="" />
<img id="img3" onclick="showpic('img3')" src="https://638183.freep.cn/638183/Pic/2022/3.jpg" alt="" />
<img id="img4" onclick="showpic('img4')" src="https://638183.freep.cn/638183/Pic/2022/4.jpg" alt="" />
<img id="img5" onclick="showpic('img5')" src="https://638183.freep.cn/638183/Pic/2022/5.jpg" alt="" />
</div>
<div id="picBox" class="picBox"><img id="imgShow" alt="" src="https://638183.freep.cn/638183/Pic/2022/5.jpg" /></div>
</div>
<audio id="auMusic" src="http://www.kumeiwp.com/sub/filestores/2022/01/16/1d0f33a9d673029b6150a68858c27ad3.mp3" autoplay="autoplay" loop="loop"></audio>
<script language="javascript">
var aud = document.getElementById('auMusic');
var imgSw = document.getElementById('imgShow');
function showpic(idx){ imgSw.src = document.getElementById(idx).src; }
imgSw.onclick = function() { aud.paused ? aud.play() : aud.pause(); }
</script>
布局没有认真构思与斟酌、计算。主要目的是想测试 object-fit 属性的 cover 值对 img 的修饰效果。全贴代码如下:
<style type="text/css">
.picMain {
margin: auto;
width: 720px;
position: relative;
background: linear-gradient(45deg, olive, green, silver, white, transparent);
padding: 10px;
box-shadow: 2px 2px 4px 1px rgba(0,0,0,.6);
display: flex;
flex-direction: row;
gap: 8px;
}
.picBox { flex-grow: 2; cursor: pointer; }
.picMini {
width: 150px;
display: flex;
flex-direction: column;
gap: 8px;
}
.picBox img {
width: 570px;
height: 730px;
object-fit: cover;
}
.picMini img {
width: 120px;
height: 140px;
border-radius: 50%;
opacity: .5;
cursor: pointer;
}
.picMini img:hover { opacity: 1; border-radius: 0;}
</style>
<div class="picMain">
<div class="picMini" id="picMini">
<img id="img1" src="https://638183.freep.cn/638183/Pic/2022/1.jpg" alt="" />
<img id="img2" src="https://638183.freep.cn/638183/Pic/2022/2.jpg" alt="" />
<img id="img3" src="https://638183.freep.cn/638183/Pic/2022/3.jpg" alt="" />
<img id="img4" src="https://638183.freep.cn/638183/Pic/2022/4.jpg" alt="" />
<img id="img5" src="https://638183.freep.cn/638183/Pic/2022/5.jpg" alt="" />
</div>
<div id="picBox" class="picBox"><img id="imgShow" alt="" src="https://638183.freep.cn/638183/Pic/2022/5.jpg" /></div>
</div>
<audio id="auMusic" src="http://www.kumeiwp.com/sub/filestores/2022/01/16/1d0f33a9d673029b6150a68858c27ad3.mp3" autoplay="autoplay" loop="loop"></audio>
<script language="javascript">
var aud = document.getElementById('auMusic');
var imgSw = document.getElementById('imgShow');
function showpic(idx){ imgSw.src = document.getElementById(idx).src; }
imgSw.onclick = function() { aud.paused ? aud.play() : aud.pause(); }
</script>
本帖最后由 马黑黑 于 2022-1-29 12:16 编辑 <br /><br /><p>如果用 object-fit 的 contain 值(父框600*700、子元素居中,图片设置成同父框尺寸):<br> </p>
<div style="width:600px;height:700px;margin:auto;border:1px solid; text-align:center;"><img style="object-fit:contain; width:600px;height:700px;" src="https://638183.freep.cn/638183/Pic/2022/4.jpg" alt=""></div>
原图:600*899
https://638183.freep.cn/638183/Pic/2022/4.jpg 黑黑真厉害,这么多裁剪效果的图图,直接一个帖上{:4_178:} 小辣椒 发表于 2022-1-29 12:31
黑黑真厉害,这么多裁剪效果的图图,直接一个帖上
镁铝还不够多{:4_170:} 厉害厉害,老黑在玩中西合璧啊。{:5_117:} 马黑黑 发表于 2022-1-29 12:46
镁铝还不够多
这个效果加个漂亮的播放器也是不错误的 这些图片可以一个个切换成大图的啊,真神奇{:4_187:} 这个帖子里用到的以前学的东西不少,有背景渐变,还有弹性布局等,现在还有新的object-fit 真棒{:4_187:} 通过和object-fit 的 contain 值,明显看得出cover是有裁剪的,好处是空间看着更完整,不会有留白。 红影 发表于 2022-1-29 13:29
通过和object-fit 的 contain 值,明显看得出cover是有裁剪的,好处是空间看着更完整,不会有留白。
总结到位 小辣椒 发表于 2022-1-29 13:08
这个效果加个漂亮的播放器也是不错误的
大图可以控制音乐 加林森 发表于 2022-1-29 12:51
厉害厉害,老黑在玩中西合璧啊。
瞎玩玩 红影 发表于 2022-1-29 13:26
这个帖子里用到的以前学的东西不少,有背景渐变,还有弹性布局等,现在还有新的object-fit 真棒
新内容不多 看到父容器没设置高度,是撑开多少算多少的吧。 马黑黑 发表于 2022-1-29 13:31
瞎玩玩
挺好看的。 加林森 发表于 2022-1-29 13:34
挺好看的。
一般般吧 红影 发表于 2022-1-29 13:34
看到父容器没设置高度,是撑开多少算多少的吧。
右边图片的父框受到flex布局的影响,它是有高度的,会跟随左边放小图的元素的高度变化 马黑黑 发表于 2022-1-29 13:38
一般般吧
比我的好得太多了。{:4_190:}