samedi 9 mai 2015

I can not click the dropdown hyperlink when the dropdown is opened

That is my codepen with lots of css and html copied directly from the DOM Explorer and put into a codepen, that you can retrace the problem:

http://ift.tt/1JW7r3O

My problem is hard to describe therefore I show you first an image:

enter image description here

Behind the yellow and red square border is each a hyperlink/a-tag in the source code. (The colored borders are just done with paint this is important! )

  • When the dropdown is closed the background + font color is green and white.
  • When the dropdown is opened I can NOT click the first hyperlink anymore (yellow border)
  • I can also NOT click the hyperlink with the browser developer tools to investigate the DOM element.
  • ONLY when I browse the DOM explorer and search for the first hyperlink in the dropdown I can click the source code-hyperlink.

What is the correct css selector to set a background and font color + hover/focus on the first hyperlink, when the dropdown is opened.

I tried a lot but my styles are ALWAYS only applied the the dropdown is closed.

Someone is overwriting my style.

How can I fix that?

HTML

<div class="navbar navbar-inverse">   

        <div id="navbar-header" class="navbar-header">
            <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#main-navbar" aria-expanded="true">
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
            </button>
                <ul class="nav navbar-nav navbar-right hidden-lg hidden-md hidden-sm )">
        <li><a href="/Account/RegisterUser" id="registerLink">Registrieren</a></li>
        <li><a href="/LogOn" id="loginLink">Anmelden</a></li>
    </ul>

        </div>

        <div class="navbar-collapse collapse in" id="main-navbar" aria-expanded="true">

            <ul class="nav navbar-nav">



                <li class="dropdown open">
                    <a href="/Navigation/MyDevices">Meine Geräte</a>
                    <a id="drop_refrigerators" href="#" role="button" class="dropdown-toggle" data-toggle="dropdown" aria-expanded="true"><b class="caret"></b></a>
                    <ul class="dropdown-menu" role="menu" aria-labelledby="drop_refrigerators">
                        <li role="presentation"><a href="/Devices/Refrigerator" role="menuitem">Overview</a></li>
                        <li role="presentation"><a href="/Devices/RegisterRefrigerator" role="menuitem">test1</a></li>
                        <li role="presentation"><a href="/Devices/RegisterSmartDeviceBox" role="menuitem">test2</a></li>
                    </ul>
                </li>

                <li class="dropdown">
                    <a href="/Navigation/Service">Service</a>
                    <a id="drop_service" href="#" role="button" class="dropdown-toggle" data-toggle="dropdown"><b class="caret"></b></a>
                    <ul class="dropdown-menu" role="menu" aria-labelledby="drop_service">
                        <li role="presentation"><a href="/WarrantyPlus/WarrantyPlus" role="menuitem">test3</a></li>
                        <li role="presentation"><a href="/CustomerService/Request" role="menuitem">test4</a></li>

                    </ul>
                </li>


                <li class="dropdown">
                    <a href="/Navigation/Configuration">Konfiguration</a>                    
                    <a id="drop_configuration" href="#" role="button" class="dropdown-toggle" data-toggle="dropdown"><b class="caret"></b></a>
                    <ul class="dropdown-menu" role="menu" aria-labelledby="drop_configuration">
                        <li role="presentation"><a href="/Configuration/CustomerData" role="menuitem">test5</a></li>
                        <li role="presentation"><a href="/Configuration/Notifications" role="menuitem">test6</a></li>
                    </ul>
                </li>

                <li class="dropdown">
                    <a href="#" style="float:left">..::TEST::..</a>
                    <a id="drop_test" href="#" role="button" class="dropdown-toggle" data-toggle="dropdown"><b class="caret"></b></a>
                    <ul class="dropdown-menu" role="menu" aria-labelledby="drop_test">
                        <li role="presentation"><a href="/TestHelper" role="menuitem">test7</a></li>
                        <li role="presentation"><a href="/Account/RegisterCustomerServiceRepresentative" role="menuitem">test8</a></li>
                    </ul>
                </li>

            </ul>
                <ul class="nav navbar-nav navbar-right hidden-xs )">
        <li><a href="/Account/RegisterUser" id="registerLink">Registrieren</a></li>
        <li><a href="/LogOn" id="loginLink">Anmelden</a></li>
    </ul>

        </div>



</div><div class="navbar navbar-inverse">   

        <div id="navbar-header" class="navbar-header">
            <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#main-navbar">
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
            </button>
                <ul class="nav navbar-nav navbar-right hidden-lg hidden-md hidden-sm )">
        <li><a href="/Account/RegisterUser" id="registerLink">Registrieren</a></li>
        <li><a href="/LogOn" id="loginLink">Anmelden</a></li>
    </ul>

        </div>

        <div class="navbar-collapse collapse" id="main-navbar">

            <ul class="nav navbar-nav">



                <li class="dropdown">
                    <a href="/Navigation/MyDevices" style="float:left">Meine Geräte</a>
                    <a id="drop_refrigerators" href="#" role="button" class="dropdown-toggle" data-toggle="dropdown"><b class="caret"></b></a>
                    <ul class="dropdown-menu" role="menu" aria-labelledby="drop_refrigerators">
                        <li role="presentation"><a href="/Devices/Refrigerator" role="menuitem">Geräteübersicht</a></li>
                        <li role="presentation"><a href="/Devices/RegisterRefrigerator" role="menuitem">Geräte-Registrierung</a></li>
                        <li role="presentation"><a href="/Devices/RegisterSmartDeviceBox" role="menuitem">SmartDeviceBox-Registrierung</a></li>
                    </ul>
                </li>

                <li class="dropdown">
                    <a href="/Navigation/Service" style="float:left">Service</a>
                    <a id="drop_service" href="#" role="button" class="dropdown-toggle" data-toggle="dropdown"><b class="caret"></b></a>
                    <ul class="dropdown-menu" role="menu" aria-labelledby="drop_service">
                        <li role="presentation"><a href="/WarrantyPlus/WarrantyPlus" role="menuitem">GarantiePlus</a></li>
                        <li role="presentation"><a href="/CustomerService/Request" role="menuitem">Kundendienst</a></li>

                    </ul>
                </li>


                <li class="dropdown">
                    <a href="/Navigation/Configuration" style="float:left">Konfiguration</a>                    
                    <a id="drop_configuration" href="#" role="button" class="dropdown-toggle" data-toggle="dropdown"><b class="caret"></b></a>
                    <ul class="dropdown-menu" role="menu" aria-labelledby="drop_configuration">
                        <li role="presentation"><a href="/Configuration/CustomerData" role="menuitem">Kundendaten</a></li>
                        <li role="presentation"><a href="/Configuration/Notifications" role="menuitem">Benachrichtigungen</a></li>
                    </ul>
                </li>

                <li class="dropdown">
                    <a href="#" style="float:left">..::TEST::..</a>
                    <a id="drop_test" href="#" role="button" class="dropdown-toggle" data-toggle="dropdown"><b class="caret"></b></a>
                    <ul class="dropdown-menu" role="menu" aria-labelledby="drop_test">
                        <li role="presentation"><a href="/TestHelper" role="menuitem">Test Helper</a></li>
                        <li role="presentation"><a href="/Account/RegisterCustomerServiceRepresentative" role="menuitem">Register Customer Service Representative</a></li>
                    </ul>
                </li>

            </ul>
                <ul class="nav navbar-nav navbar-right hidden-xs )">
        <li><a href="/Account/RegisterUser" id="registerLink">Registrieren</a></li>
        <li><a href="/LogOn" id="loginLink">Anmelden</a></li>
    </ul>

        </div>



</div>

CSS

* {
  margin: 0;
}

header {
  border-top-style: solid;
  border-top-color: #394791;
  border-top-width: 5px;
}
.navbar {
  border: none;
  margin-bottom: 0;
}
.navbar > .container {
  padding-left: 0;
  padding-right: 0;
}
.navbar > .container > .navbar-collapse {
  padding-right: 0;
  padding-left: 0;
}
.nav > li > a:hover,
.nav > li > a:focus {
  text-decoration: underline;
  background-color: white;
}
.navbar-static-top > ul > li > a {
  color: #44423e;
  padding: 10px 10px 5px 0;
  font-size: 13px;
  line-height: 17px;
}
.navbar-static-top > ul > li.history-link > a {
  color: white;
  padding: 0 10px 0 10px;
  font-size: 18px;
  line-height: 2;
  font-family: "HelveticaNeueW01-57Cn", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.navbar-static-top > ul > li.history-link > a:hover {
  color: #c2bfbb;
  text-decoration: none;
  background-color: #394791;
}

/*Overwrite the bootstrap responsive behavior that it wraps menus on small devices*/ 
#navbar-header {
  margin-left: 15px;
}
@media all and (max-width: 768px) {
  #navbar-header > ul > li {
    float: left;
  }
  #main-navbar > ul > li {
    position: relative;
    display: block;
  }
  #main-navbar a[role="menuitem"] {
    color: white;
    line-height: normal;
    padding: 8px 10px 8px 10px;
  }
  #main-navbar li[role="presentation"] {
    padding-left: 15px;
  }
  #main-navbar > ul > li a:first-child {
    background: pink;
  }
  #main-navbar > ul > li.dropdown > a:first-child {
    float: left;
    background: green;
  }
}
@media all and (min-width: 768px) {
  #main-navbar > ul > li > a.dropdown-toggle {
    /*Patricks changes: On smaller screens the menu items must be horizontal*/
    float: left;
    width: 30px;
    text-align: center;
  }
  #main-navbar > ul > li.dropdown > a:first-child {
    float: left;
    background: red;
  }
}
#navbar-header > ul > li > a:hover,
> a:focus {
  background-color: orange;
  color: blue;
}
/* When on SM resolution the dropdown is opened the style seems overriden by someone.*/

#main-navbar,
#navbar-header {
  border: none;
  color: white;
  font-size: 21px;
  font-family: "HelveticaNeueW01-57Cn", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
#main-navbar > ul > li > a,
#navbar-header > ul > li > a {
  line-height: normal;
  text-decoration: none;
  color: white;
  padding: 8px 10px 8px 10px;
}
#main-navbar .dropdown-menu > li > a,
#navbar-header .dropdown-menu > li > a {
  font-size: 21px;
}
#main-navbar #alerts-menu,
#navbar-header #alerts-menu {
  color: white;
}
#main-navbar #alerts-menu ul,
#navbar-header #alerts-menu ul {
  min-width: 400px;
  color: black;
}
#main-navbar #alerts-menu .alert,
#navbar-header #alerts-menu .alert {
  margin-top: 5px;
  margin-bottom: 5px;
}
#main-navbar #alerts-menu .alert:not(:last-child),
#navbar-header #alerts-menu .alert:not(:last-child) {
  border-bottom: solid 1px #777777;
}
#main-navbar #alerts-menu .errormessage,
#navbar-header #alerts-menu .errormessage {
  padding: 5px;
  color: #a94442;
  font-size: 12px;
}
#main-navbar #alerts-menu .refrigerator-name,
#navbar-header #alerts-menu .refrigerator-name {
  float: left;
  padding: 5px;
  font-size: 21px;
}
#main-navbar #alerts-menu .customer-link,
#navbar-header #alerts-menu .customer-link {
  float: right;
  padding: 5px;
  font-size: 15px;
}

Aucun commentaire:

Enregistrer un commentaire