我有一个两列红色/黑色格栅50/50%,高100%,有一个脚本来随机的两个加载页面的时候,所以左或右的外观。我将两列网格后面的代码从相对位置改变了一些,并将右边的左边浮动到固定的绝对位置。这是因为移动时的滚动行为,这种方式更好。下面随机添加类两个div
的代码使用浮动它增加留下了类或右,使红方随机选择一个侧面和黑色自动跟随的时候,因为它是相对于彼此工作的罚款。使用绝对和固定的位置变化,它必须向左右两侧添加一个班级工作。有人知道如何添加这个,所以当红色留下时,黑色是正确的,反之亦然。
// Random red & black //
window.addEventListener('load', function() {
// This is a ternary operator, which is just a shorthand way to
// do an if/else statement. This basically says, if the random number
// is less than .5, assign "left" to the scenario variable.
// if it is greater (or equal to), assign "right" to the variable.
var scenario = Math.random() < .5 ? "left" : "right";
document.querySelector(".red",).classList.add("" + scenario);
});
.left {
left: 0;
}
.right {
right: 0;
}
.red,
.black {
width: 50%;
height: 100%;
}
.black {
position: absolute;
background-color: black;
}
.red {
position: fixed;
background-color: red;
}
<div class="red"></div>
<div class="black"></div>
谢谢。我知道这并不理想,但现在它工作得很好。如果我重写它,我会去CSS Grid Layout,我已经在使用它来进行未来的编码,它很棒。 – KP83
@Pallum为什么使用CSS网格布局,为什么还需要2D这里?如果您只需要一排颜色的柔光箱将为您工作。顺便说一句CSS Grid Layout也可以在IE10 + \ Edge中使用,您只需要使用旧的语法。 –
@Pallum但说实话,我会在这里使用Flexbox的,因为它应该到处(除了一些真正过时)。 –