单击某些内容时如何摆脱背景

时间:2016-06-05 18:47:21

标签: javascript jquery html css media-queries

我是响应式设计的新手,我想知道如何在点击SPAN时让背景颜色消失,我的代码如下:

HTML CODE

    <body>


    <span class="menu-trigger">MENU </span>


   <nav class = "nav-main">

            <ul>
                <li>
                  <a href = "#" class = "nav-item"> HOME</a>                              
                </li>
                <li>
                   <a href = "#" class = "nav-item">ABOUT US </a>
                </li>

                 <li>
                   <a href = "#" class = "nav-item">PORTFOLIO </a>
                </li>

                <li>
                   <a href = "#" class = "nav-item">SERVICES </a>
                </li>
                  <li>
                   <a href = "#" class = "nav-item">CONTACT US </a>
                </li>

          </ul>
    </nav>
</body>

CSS

@media screen and (max-width: 480px){

  .menu-trigger{
   display:block;   
      color:#305782;
      background-color: #d5dce4;
      padding:10px;
      text-align: right;
      font-size: 83%;
      cursor: pointer;
  } 

.nav-main {
     display:none;  
}

.nav-expanded{
   display:block;  
   background-color:none;

}
  .nav-main > ul > li{
      float:none;
      border-bottom: 2px solid #d5dce4;
      background-color:black;
  }

    .nav-main > ul > li:last-child{

      border-bottom: none;

  }

    .nav-main .logo{
  display:none;
}

    .nav-item:hover {

    background-color:forestgreen;

}
}

JQUERY

     <script type ="text/javascript">
        jQuery( document ).ready(function() {
   jQuery(".menu-trigger").click(function(){
        jQuery(".nav-main").slideToggle(400, function (){
          jQuery(this).toggleClass("nav-expanded").css('display', '');
        });

    });
});

    </script>

JS FIDDLE

https://jsfiddle.net/k4ytvyef/2/ 正如您在移动视图中调整屏幕大小时所注意到的那样,HOME选项有很长的背景,我该如何摆脱它?

2 个答案:

答案 0 :(得分:0)

当你说“摆脱背景颜色”时,你的意思是把它变成白色吗?在这种情况下,请考虑以下示例调用。

 $('yourIdOrClass').css({'background-color':'white'});

答案 1 :(得分:0)

在你的jQuery代码下添加它应该可以解决问题。

window.onresize = function() {
  if (window.matchMedia('(max-width: 480px)').matches) {
    jQuery(".nav-main").css("background-color", "inherit");
  } else
    jQuery(".nav-main").css("background-color", "");
    jQuery(".nav-main").css("display", ""); // Display navbar back when you change width 
}