Javascript 使用CSS对角拆分/组合div/image

Javascript 使用CSS对角拆分/组合div/image,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我正在努力实现以下目标: 对角线分割应该从右上角到左下角,以精确的角度进行,以便两侧完全相等 我在网上找到了一个例子,但它是针对宽宽视角图像的,当我试图修改它以满足我的1:1比例的目的时,我似乎无法使底部图像正确对齐,但顶部图像效果良好 对角线分割也偏离中心,黄色背景显示应该由下部图像填充的区域。下半部图像应与上半部图像大小相同,只显示下半部而不是上半部 我制作了一把小提琴来演示: HTML <div class="split-image-container"> <d

我正在努力实现以下目标:

对角线分割应该从右上角到左下角,以精确的角度进行,以便两侧完全相等

我在网上找到了一个例子,但它是针对宽宽视角图像的,当我试图修改它以满足我的1:1比例的目的时,我似乎无法使底部图像正确对齐,但顶部图像效果良好

对角线分割也偏离中心,黄色背景显示应该由下部图像填充的区域。下半部图像应与上半部图像大小相同,只显示下半部而不是上半部

我制作了一把小提琴来演示:

HTML

<div class="split-image-container">
    <div class="split-image-bottom">
        <img src="https://merkd.com/usr/members/icons/thumb.php?src=1435366066.9.png&w=300" alt="Just Another Clan" title="Just Another Clan" />
    </div>
    <img src="https://merkd.com/usr/teams/icons/thumb.php?src=1441676463.1.jpg&w=300" alt="ExtraordinaryKillers" title="ExtraordinaryKillers" />
</div>
仅CSS 使用属性的纯CSS解决方案。不过情况很糟糕

。拆分图像容器{
高度:300px;
宽度:300px;
位置:相对位置;
}
img{
宽度:100%;
身高:100%;
位置:绝对位置;
}
.夹子{
-webkit剪辑路径:多边形(100%0%、0%100%、100%100%);
剪辑路径:多边形(100%0%,0%100%,100%100%);
}

@dippas添加了一个SVG解决方案,它应该具有更好的浏览器支持。
.split-image-container{
    height: 300px;
    width: 300px;
    overflow: hidden;
    position: relative;
    border: 1px solid black;
    padding: 0;
    background-color: green;
}
/*Rotate this div and position it to cut the rectangle in half*/
.split-image-bottom{
    transform: rotate(315deg);
    position: absolute;
    top: 85px;
    left: 70px;
    overflow: hidden;
    height: 350px;
    width: 350px;
    background: yellow;
}
/*Apply exact opposite amount of rotation to the .image2 class so image appears straight */
/*Also align it with the top of the rectangle*/
.split-image-bottom img{
    transform: rotate(45deg);
    position: absolute;
    top: -50px;
    left: 15px;
}