ohmygod Posted December 17, 2009 Report Share Posted December 17, 2009 (edited) ir vairāku pakāpju menu ar uzbūvi: <ul id="top0" class="sub1"> <li id="sub1"><a href="#">menu1</a> <ul id="top1" class="sub2"> <li id="sub6"><a href="#">sub1</a></li> <li id="sub7"><a href="#">sub2</a></li> <li id="sub8"><a href="#">sub3</a></li> <li id="sub9"><a href="#">sub4</a></li> <li id="sub10"><a href="#">sub5</a> <ul id="top5" class="sub3"> <li id="sub11"><a href="#">subsub1</a></li> <li id="sub12"><a href="#">subsub2</a></li> <li id="sub13"><a href="#">subsub3</a></li> <li id="sub14"><a href="#">subsub4</a></li> <li id="sub15"><a href="#">subsub5</a></li> </ul> </li> </ul> </li> <li id="sub2"><a href="#">menu2</a></li> <li id="sub3"><a href="#">menu3</a></li> <li id="sub4"><a href="#">menu4</a></li> <li id="sub5"><a href="#">menu5</a></li> </ul> Šeit redzami 3 lvl. Katram paredzēts izskatīties citādāk, tamdēļ arī viņiem tur klases klāt ul, atkarībā no dziļuma. Sūdi tādi, ka 2 lvl paņem pirmā lvl krāsu un uz savējo uzspļauj. Fonta izmērs, weight e.t.c. mainās - vis snotiek, bet krāsa vot figu. Firebug dod man šitādu rezultātu: Kā man 2 lvl un arī 3 iedot katram savu krāsu...? sjo, herņa, uzliku arī 1lvl klasi sub1 a basta. Viss darbojas. Tik incanti, kāpēc iepriekš negāja. Kā tas parent pārsit zemāk esoša elementa noformējumu. Edited December 17, 2009 by ohmygod Quote Link to comment Share on other sites More sharing options...
2easy Posted December 17, 2009 Report Share Posted December 17, 2009 teoriju var palasīties te http://www.w3.org/TR/CSS21/cascade.html#cascading-order un vari arī uzreiz pamēģināt color: #123456 !important Quote Link to comment Share on other sites More sharing options...
mefisto Posted December 17, 2009 Report Share Posted December 17, 2009 2easy, teoriju vajag palasīt http://www.w3.org/TR/CSS21/cascade.html#specificity Uzliec precīzāku selectoru: ul#top0 li.sub2 a{} Un ieteiktu palasīt par semantiku. Tas tavs html's ir vienkārši drausmīgs. Quote Link to comment Share on other sites More sharing options...
2easy Posted December 17, 2009 Report Share Posted December 17, 2009 lol, tiešām oriģināls links mefisto, paldies :D Quote Link to comment Share on other sites More sharing options...
2easy Posted December 17, 2009 Report Share Posted December 17, 2009 tas !important jau bija domāts tikai kā hotfix bet no tevis jau varēja gaidīt, ka to, ko kāds neuzraksta, tu uzskati, ka arī nezin :D protams, ka rakstot css kādai elementu grupai, pakāpeniski palielina to pašu specificity: #top_menu a {...} /* vispārīgs/kopīgs stils visiem top_menu linkiem */ #top_menu .sub2 a {...} /* konkrēta apakšlīmeņa linka stils */ #top_menu .sub3 a {...} šādi definējot, !important nemaz nevajag. bet nezinot pārējo html,css, drošāk ir ieteikt risinājumu, kas garantēti uzreiz nostrādās... Quote Link to comment Share on other sites More sharing options...
mefisto Posted December 17, 2009 Report Share Posted December 17, 2009 Ar !important ir 2vas problēmas : - tas īsti nedarbojas uz IE6 - baigā iespēja kaut ko spist, ja nezini pārejo lapas kodu. Quote Link to comment Share on other sites More sharing options...
2easy Posted December 17, 2009 Report Share Posted December 17, 2009 abi tavi pieminētie punkti neattiecas uz šo gadījumu - tas īsti nedarbojas uz IE6 !important nedarbojas uz ie6 tad, ja kāda īpašība parādās otrreiz tajā pašā definīcijā (šo ie6 "fīču" var izmantot css hackos, ja vien ie6 specifisko css neliek iekš conditional comments) piemēram, šis teksts normālos browseros būs sarkans, bet ie6 pelēks <div style="color: red !important; color: silver">asdf</div> - baigā iespēja kaut ko spist, ja nezini pārejo lapas kodu. norādot !important gala elementam, kas atrodas kkādas struktūras pašā dziļumā (kāds ir menu links), nju nekādi neko nevar "sapist" apkārtējiem elementiem so, no problem there... tāpēc !important ir ļoti pieņemams veids, kā ātri detektēt/izlabot problēmu, bet vēlāk jau var reorganizēt css tā, lai iztiktu tikai ar id,class specificity Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.