欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

Javascript和媒體查詢& quot沖突& quot?

洪振霞2年前8瀏覽0評論

下面是代碼,問題描述和問題緊隨其后。

function showOrHideMenu(menuId) {
  // alert(menuId);
  var menu = document.getElementById(menuId);
  // alert(menu);
  var isVisible = menu.style.visibility;
  // alert(isVisible);

  if ((isVisible === 'hidden') || (isVisible === '')) {
    // alert(menu1);
    menu.style.visibility = 'visible';
    menu.style.width = '75vw';
    // alert("passe 1 bis");        
  } else {
    // alert("passe 2");
    menu.style.visibility = 'hidden';
    // alert("passe 2 bis");
  }
}

@media (min-width: 800px) {
  .css_menu_1 {
    visibility: visible;
    font-size: 1.3rem;
    background-color: goldenrod;
  }
}

<img src="../images/hamburger_menu_icon.png" alt="Display or hide menu 1" class="css_btn_menu_1" id="btn_menu_1" onclick="showOrHideMenu('menu_1');">

當(dāng)您使用javascript更改樣式時,它會將內(nèi)聯(lián)樣式添加到元素中。內(nèi)聯(lián)樣式會覆蓋任何東西,這會導(dǎo)致覆蓋CSS媒體查詢中定義的樣式。

在這種情況下,當(dāng)菜單可見時,您可以完全移除內(nèi)聯(lián)樣式。

function showOrHideMenu(menuId) {
  var menu = document.getElementById(menuId);

  if (menu.style.visibility === 'hidden' || menu.style.visibility === '') {
    menu.style.visibility = 'visible';
    menu.style.width = '75vw';
  } else {
    menu.style.visibility = '';
    menu.style.width = '';
  }
}

或者您可以添加一個類& quot活動& quot并相應(yīng)地更改樣式:

function showOrHideMenu(menuId) {
  var menu = document.getElementById(menuId);

  if (menu.style.visibility === 'hidden' || menu.style.visibility === '') {
menu.classList.add('active');
  } else {
menu.classList.remove('active');
  }
}

在css中,您還必須執(zhí)行以下操作:

.css_menu_1 {
  visibility: hidden;
  width: 0;
} 
.css_menu_1.active { 
  visibility : visible; 
  width: 75vw;
}