CSS3 Rotate menu

Tags:    css3

Mit problem er at mine nth-child ikke virker hvis jeg putter a tags uden om li'erne.

Fold kodeboks ind/udHTML kode 

Fold kodeboks ind/udCSS kode 

Har fjernet en masse af CSS'en da den ikke lige var relevant :)
Men som i kan rotere jeg boksen, og så rotere teksten den anden vej så den stå 0grader igen.

Men når jeg putter a tags uden om li virker det style jeg har givet med nth-child ikke.

har prøvet at ændre dem til #menu ul a li:nth-child(1) osv.



7 svar postet i denne tråd vises herunder
4 indlæg har modtaget i alt 18 karma
Sorter efter stemmer Sorter efter dato
Hvorfor også putte a tagget rundt om li'en ? ... Det virker rimelig semantisk ukorrekt. A tagget "skal" inden i li'et.



Som Dan siger burde du i stedet sætte dine links (anchors, a), inden i dine <li> tags - Dette er semantisk korrekt i modsætning til det andet. Hvis du vil have at hele <li> elementet skal kunne klikkes, så sæt enten:
Fold kodeboks ind/udCSS kode 


eller sæt en onclick listener på <li> elementet.



Som Dan siger burde du i stedet sætte dine links (anchors, a), inden i dine <li> tags - Dette er semantisk korrekt i modsætning til det andet. Hvis du vil have at hele <li> elementet skal kunne klikkes, så sæt enten:
Fold kodeboks ind/udCSS kode 


eller sæt en onclick listener på <li> elementet.

Jeg vil da også lige sige lidt mere til det, @Jakob siger:
Jeg gør også altid det, at jeg sætter mit a tag til display: block; også sætter jeg padding eller height / width på a elementet i stedet for li taget. På den måde får man en størrer knap og man undgår, at man har knapper hvor man kun kan klikke på teksten. Jeg har lavet et hurtigt eksempel på det her på jsfiddle.

Når du kører musen hen over, vil du kunne se hvor stor en del af knappen der egentlig er et link: http://jsfiddle.net/xtHSr/1/





Indlæg senest redigeret d. 28.08.2012 13:04 af Bruger #17081
Har lige lagt min menu op: http://jsfiddle.net/VTBTC/
Ved ikke lige hvordan jeg skal få mine a tags til at opfører sig som li
Så altså linket fylder hele boksen.


http://jsfiddle.net/VTBTC/1/ Prøv det her



Har lige lagt min menu op: http://jsfiddle.net/VTBTC/
Ved ikke lige hvordan jeg skal få mine a tags til at opfører sig som li
Så altså linket fylder hele boksen.



Tak dan, virkede.

Og for lige at komme tilbage til semantisk ukorrekt placering af <a> tags.
Hvorfor må <a> tagget ikke være uden om? Hvad for nogle konsekvenser har det?



hvis du pakker den uden om, er der ingen grund til, at bruge en liste. UL = Unordered List ... LI = List item, altså det element der bliver listet. Egentlig derfor det er usemantisk, at pakke LI ind i A.

Og hvis du bruger en anden doctype end HTML5 vil du også få en validerings fejl, fordi du putter et block element inden i et inline element. Altså LI og P ind i A



Indlæg senest redigeret d. 28.08.2012 15:02 af Bruger #17081
t