我有一个网站,有响应的CSS使用媒体查询。css更改后不再响应
有一个div,叫做“映射”
对于宽度500像素和上面有通过简单地设置在容器
//html stucture
//header, menu
<div id="conteiner">
//texts , images, forms, etc
<div id="map"></div>
<input type="button" id="showpage"...
<input type="button" id="showmap"...
</div>
//footer
@media screen and (max-width: 500px) {
//other divs style here
#map {width:100%; text-align:center; position:relative; padding-left:0.1%; padding-right:0.1%; padding-bottom:60%;}
#showpage #showmap {display:none;}
}
内的地图对于宽度500像素和下方,地图变为“全屏”一切display:none
除地图和showpage按钮。
@media screen and (min-width: 500px) {
//other divs style here, set to display none
#map {width:100%; heigth:100%; text-align:center; position:relative; margin:0; padding:0;}
#showpage {display:block; position: absolute;}// floats over map
#showmap {display : none;}
}
到目前为止,OK,如果我调整浏览器我看地图走全屏,并返回容器DIV中,当浏览器的宽度超过500与否。所以一切都是敏捷的。
问题:
当该映射为全屏,(浏览器下方500像素)我使用showmap符/ showpage按钮,以便用户可以从全屏地图切换到页面并回到地图。
当用户看到页面时,Showmap按钮是可见的,并且可以再次单击它以查看全屏地图。
按钮使用javascript来为div设置/取消设置style.display:none
。
如果用户单击按钮,css为不再响应。如果我点击showpage按钮来“关闭”全屏地图,我会看到页面。然后我调整浏览器来获得更大的,但地图永不再出现的div容器
我想,当javascript的改变CSS里面,变化是永久性
我该如何解决这个问题?
感谢
当你更新元素的“风格”的对象,这些设置将覆盖CSS。您可以添加/删除CSS类,而不是直接修改“样式”对象。这样,你的CSS仍然在控制之中。 – Pointy
@Pointy。快速反应和有趣的解决方案你能提供一个例子/链接吗?谢谢 – slevin