ale chciałbym w jednym z nich, nie pozbawiając go klasy CSS, wymusić np kolor (oczywiście klasa określa jakiś kolor)
<a class="submenu" style="color:green" ...
To powinno działać, pod warunkiem że klasa nie ustala color
z !important
.
Ogólnie, jak style są ustalane:
- Style z
!important
biorą górę nad wszystkim
- Potem style ustalone z atrybutem
style=""
- Potem style ustalone poprzez styl na
id
, tzn. #submenu
- Potem style ustalone przez klasy, tzn.
.submenu
- Jeśli są równe, to brane jest pod uwagę "specificity" klas, np styl
div.submenu
weźmie górę nad .submenu
, bo jest bardziej specific.
- Jeśli nadal są równe, to brana jest pod uwagę kolejność dodania styli w arkuszu.
https://developer.mozilla.org/en-US/docs/Web/CSS/Specificity
Nie ma ani jednego (jak na razie) !important
nigdzie w projekcie.
Znaczne fragmenty tego sa moje własne, i bardzo poprawnie edukacyjnie sobie szedłem Meyerem, bez nadmiaru, małymi kroczkami
Wakacje z duchami odc 2.
Co mi daje do myślenia, to kod jest od pierwszego załadowania z serwera
<li class="submenu topnav-right" ><a wicket:id="loginPlease" style="background-color:gray;" href="#" id="loginPlease7">Zaloguj</a></li>
Natomiast w/w szarość tła się ujawnia po kliknięciu. Wiem, że dokładnie to pracuje, bo skutkuje tak samo inny wpisany tam kolor (magenta, whatever)
Broni tego jakaś pseudoklasa ? Jakieś przeczenie visited
(jakkolwiek by się nazywało, skądinąd jak sie nazywa ) ???
Skądinąd prawie nie ma visited
, a jednak odwiedzone linki sie nie zmieniają (fakt, to Wicket, więc w 90% kroczy numer wersji w url)
Nie mam na temat a
wiele grzechów, ot:
div#nav li a {
display: block;
padding: 0.25em 0 0.25em 0.5em;
text-decoration: none;
width: 8.5em;
}
Jeszcze inna przyczyna awarii, nie istniejący obrazek??? Zaprzestaliśmy maksymalnego bajerowania, ale ten styl został
div#nav li.submenu li.submenu {
background: url(/images/submenu.gif) 95% 50% no-repeat;
}
(oczywiście całe menu jest 100% wolne od JS, tylko HTML+CSS)