当用户被定向到页面或页面被刷新时,足球场最初应该是可见的。随后,如果用户不想查看它,他们可以选择折叠该字段。当前,页面打开时字段是隐藏的。我想反转一下。
HTML:我试着把图像放在标签内(它当前所在的位置),以便使它能够响应“-”和“+”符号。我还把它放在了label标签之外。
CSS:我试着使用max-height沿着一个可见性:隐藏和可见性:可见和显示:无并显示:这两种方法的组合要么使图像最小化,要么使图像完全消失,要么不响应“-”或“+”。
这是我的当前代码:
.game-board {
display: block;
font-size: 1.5rem;
text-align: center;
color: #dcdcdc;
}
label::before {
display: flex;
flex-direction: row;
justify-content: flex-end;
content: '-';
margin-right: 20px;
font-size: 24px;
font-weight: bold;
}
input[type="checkbox"] {
display: none;
}
.football {
width: 90%;
}
.game-board input[type="checkbox"]:checked+label::before {
content: '+';
}
.game-board input[type="checkbox"]:checked+label .football {
max-width: 0px;
}
<div class="game-board">
<input id="field" type="checkbox" checked />
<label for="field"><img class="football" src="img/Saints_Football_field.png" alt="Home Field"></label>
</div>
2条答案
按热度按时间cnh2zyt31#
这能解决你的问题吗?
只需在输入中删除此
checked
。所以,它应该看起来像这样。
gorkyyrv2#
不是100%清楚你的意图或愿望在这里。
如果你想切换图像或实际的复选框,你想要的点击不是很清楚,但我相信你可以以此为起点。(也许你的意思是在+/-中 Package 复选框?如果需要,很容易交换图像和div。
你可能应该使用网格,这样你就可以在X和Y上你需要的地方放置东西。这里我使用了带有名称的区域,并在CSS中放置了一些适当的注解;我在+/-上使用了颜色,这样您就可以看到它反映了单击图像时的复选框切换-这是因为标签 Package 了图像,并在上面有
for=""
。我添加了一些丑陋的边界和颜色的视觉清晰度是什么地方。