使用到的是grid
布局,需要注意的是grid-template-rows: masonry;
目前只有Firefox
浏览器支持这个效果,而且还是一个实验性属性需要在设置里面开发实验性选项才行。
实例
<!DOCTYPE html>
<html>
<head><title>Document</title><style>#img {display: grid;grid-template-columns: repeat(4, 1fr);grid-gap: 10px;grid-template-rows: masonry;}#img img {width: 200px;}</style>
</head>
<body><div id="img"></div><script>const img = document.getElementById('img')let ele = ''for (let i = 0; i < 14; i++) {ele += `<img src="./images/img (${i+1}).jpg" />`}img.innerHTML = ele</script>
</body>
</html>