【发布时间】:2020-08-01 04:58:37
【问题描述】:
因此,就上下文而言,我目前正在进行的项目正在创建一个仪表板,该仪表板将显示一个位置,而该位置又是一个 IP 地址。因此,我在仪表板中为每个位置动态创建一个 FlexBox,该 FlexBox 将根据与该位置关联的 IP 地址上的 ping 的毫秒(毫秒)响应时间来改变颜色。所以我遇到的问题是每个 FlexBox 的背景颜色并没有像它应该的那样改变。它使用位置列表中的最后一个位置并使每个位置都具有颜色。我提供了一张照片,上面有我所说的例子。颜色代码是黄色的,所以 FlexBox 背景应该是黄色的,但它会变成绿色。现在,如果仪表板中的最后一个 FlexBox 是黄色的,那么所有的盒子都是黄色而不是绿色。
我已经浏览了 Flask 文档 here,但还没有发现任何有用的信息。
下面是我用来实现这一点的代码。它是一个烧瓶应用程序,因此它是 HTML、CSS 和 Python 的组合。
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="/static/styles.css">
<style>
.flex-container > div {
width: 15%;
margin: .5%;
text-align: center;
line-height: 200%;
font-size: 100%;
color: rgb(226, 225, 225);
{% for k, v in locations_dicts.items() %}
background-color:{{ v[1] }};
{% endfor %}
}
.flex-container > div:hover {
box-shadow: 0 0 11px rgb(255, 255, 255);
}
</style>
</head>
<div>
<h2 class="dashboard-title">Mikrotik Dashboard</h2>
</div>
<div class="topnav">
<a class="active" href="/">Dashboard</a>
<a href="/add">Add Location</a>
<a href="/remove">Remove Location</a>
</div>
<div id="cell" class="flex-container" onclick="remove()">
{% for k, v in locations_dicts.items() %}
<div>{{ k }}<br>{{ v[0] }}<br>{{ v[1] }}<br>{{ v[2] }}</div>
{% endfor %}
</div>
<script id="remove">
function remove() {
var remove;
if (confirm("Do you wish to remove this location?\n(This currently does nothing.)")) {
remove = true;
} else {
remove = false;
}
return remove
}
</script>
<meta http-equiv="refresh" content="60">
</html>
【问题讨论】:
-
为每种颜色创建 css 类,然后为您的弹性盒动态分配类。