【发布时间】:2019-11-07 21:26:06
【问题描述】:
如何只在特定条件下添加样式?
我正在开发一个具有最大高度的 div,并且不断向其中添加内容。 div 随着更多内容的添加而增长,但是当它达到最大高度时,它会停止增长并获得一个滚动条。
此时,我想为 div 添加一个边框,以给人一种内容延续到底部边框下方的印象。
这是一个非常简化的代码:
<html>
<head>
<style>
.will-get-border {
/* border: 1px solid black; // <-- only if height >= 100px */
max-height: 100px;
overflow: auto;
}
</style>
<script>
function AddListItem() {
var ul = document.getElementById('unorderedList');
var li = document.createElement('li');
li.innerHTML = 'This is a list item.';
ul.appendChild(li);
}
</script>
</head>
<body>
<div class="will-get-border">
<ul id="unorderedList"></ul>
</div>
<input type="button" onclick="AddListItem()" value="Add list item" />
</body>
</html>
这样的事情我需要 SASS 还是 LESS?
【问题讨论】:
-
多高?如果是元素高度,则可以使用脚本,如果是媒体,则可以使用media query。
-
如果列表项始终是固定高度并且包含的 div 上存在最大高度,您只需进行数学运算并找出到达该溢出点需要多少项并动态添加一个带有类似
element.classList.add("mystyle");的边框的类
标签: css conditional-statements