在移动设备上使用侧边栏定位的CSS问题

时间:2017-02-23 14:25:27

标签: android html css3 google-chrome mobile

我的侧边栏菜单出了问题。在一些Android设备,如三星Galaxy Note 2和Chrome浏览器位置:菜单的固定和实际位置失败,菜单显示在我的网站上。这是一个CSS代码。我已经搜索了解决方案,只有我得到的答案我需要使用

backface-visibility: hidden; and -webkit-transform:translateZ(0);

我做到了,但问题仍然存在。我是制作移动兼容性网站的初学者,无法找出造成问题的原因。希望得到你的帮助。

nav {
  background-color:White; 
  padding-right: .25em;
  position: fixed;
  left: -25em;
  top: 0;
  padding-top: 3em;
  box-sizing: border-box;
  z-index: 300;
  height: 100%;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-backface-visibility: hidden;
  -webkit-transform:translateZ(0);
  backface-visibility: hidden;
}

nav.active 
{
left: 0;
overflow:auto;
}

    <script type="text/javascript">
//jquery for switching the class
 $('#mobile-sidebar').click(function (event) {
      $('nav').toggleClass('active');
 });
</script>

P.S。我的英语很差。

1 个答案:

答案 0 :(得分:0)

您可以使用@media规则,用于为不同的媒体类型/设备定义不同的样式规则。

@media screen and (min-width: 480px) {
    nav {
  background-color:White; 
  padding-right: .25em;
  position: fixed;
  left: -25em;
  top: 0;
  padding-top: 3em;
  box-sizing: border-box;
  z-index: 300;
  height: 100%;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-backface-visibility: hidden;
  -webkit-transform:translateZ(0);
  backface-visibility: hidden;
}

nav.active 
{
left: 0;
overflow:auto;
}

}

检查Samsung Galaxy Note 2的最小宽度。尝试使用@media规则获取移动兼容性,并根据设备(宽度)更改css。