Ich kann die Höhe und Breite der a
Elemente meiner Navigation einfach nicht einstellen .
#header div#snav div a{
width:150px;
height:77px;
}
#header div#snav div a:link{
width:150px;
height:77px;
}
#header div#snav div a:hover{
height:77px;
background:#eff1de;
}
Irgendwelche Ideen, was ich falsch mache?
Anker müssen einen anderen Anzeigetyp als den Standard haben, um eine Höhe zu erhalten.
display:inline-block;
oderdisplay:block;
.Überprüfen Sie auch,
line-height
welche davon interessant sein könnten.quelle
Ihr Problem ist wahrscheinlich, dass
a
Elemente sinddisplay: inline
von Natur aus sind. Sie können die Breite und Höhe von Inline-Elementen nicht festlegen.Sie würden zu Satz haben
display: block
auf diea
, aber das wird andere Probleme mit sich bringen , da die Links zu verhalten wie Blockelemente beginnen. Die häufigste Heilung dafür ist, siefloat: left
so zu geben, dass sie sich sowieso nebeneinander aufstellen.quelle
Aus der Definition der Höhe :
Ein
a
Element ist standardmäßig ein Inline-Element (und wird nicht ersetzt).Sie müssen die Anzeige ändern (direkt mit der Anzeigeeigenschaft oder indirekt, z. B. mit float).
quelle
Vielen Dank an RandomUs 1r für diese Beobachtung:
Ich habe es selbst für eine Top-Navigationsmenüleiste wie folgt versucht:
Gestalten Sie zuerst das "li" -Element wie folgt:
Gestalten Sie dann das Element "a"> wie folgt:
Jetzt sind die Navigationslinks alle gleich breit, wobei der Text in jedem Link zentriert ist.
quelle