Höhe eines Ankers

Hai, HTML-Spezialisten,

ich hab da ein Problem (wer hätte das gedacht…):

ich will ein Menue mit Effekt, nur auf CSS basierend, bauen. Der Effekt
besteht in einem einfachen Wechsel der Hintergrundgrafik des
Menuepunktes bei hoover. Also hab ich eine unsortierte Liste angelegt,
den einzelnen Listenpunkten ein Hintergrundbild zugeordnet und bei
hoover über den Link, wird das Hintergrundbild des List-Punktes
gewechselt. Ausprobiert; Firefox macht’s genau so, wie ich mir das
gedacht habe - IE natürlich nicht :frowning:

Also hab ich das Hintergrundbild dem Anker selbst zugeordnet - nu
macht’s der IE - nur in Firefox ist die Hintergrundgrafik nur so hoch,
wie der Text des Links, also abgeschnitten.
Ich war der Meinung, die Höhe eines Links würde vom höchsten Inhalt
bestimmt - also, wenn da 'ne Grafik als Link verwendet wird, die 100px
hoch ist, dann ist auch der Link (und damit sein Hintergrund) ebenso
100px hoch - ist er aber scheinbar nicht…

Also: wat nu? Wie krieg ich Firefox dazu, das Hintergrundbild auf der
ganzen Höhe des Links darzustellen?

Die entsprechenden Schnipsel:

in der CSS:
...
menu.menue { background-image:url("fiximg/menuebg.gif");
 position:absolute;
 top:80px;
 left:20px;
 list-style-type:none;
 list-style-position:inside;
... 
 }
menu.menue li { font-size:12pt;
 font-weight:bold; }
img.symbol { vertical-align:middle;
 border: solid 0px;
 height:95px;
 width:100px; }
a { height:100px;
 border:1px solid black;
 text-decoration:none;
 background-image:url("fiximg/aus.gif");
 background-repeat:no-repeat; }
a:link { color: #000000; }
a:visited { height:90px;
 color: #333333;
 text-decoration:none; }
a:hover { color: #666666;
 text-decoration:none;
 background-image:url("fiximg/an.gif");
 background-repeat:no-repeat; }
...

und der HTML-Schnipsel:

...

Ideen?
Gruß
Sibylle

gewechselt. Ausprobiert; Firefox macht’s genau so, wie ich mir
das gedacht habe - IE natürlich nicht :frowning:

Ich schreibe immer „ganz normal“ für CSS und bügle die IE-Fehler mit einem separaten Stylesheet aus, dass ich mit Conditional Comments nur im IE einbinde. Zu den Dingern findest du hier (http://msdn.microsoft.com/workshop/author/dhtml/over…) Infos, Google kennt aber sicher noch mehr (und vielleicht sogar bessere) Seiten.

Hai, Markus,

Ich schreibe immer „ganz normal“ für CSS und bügle die
IE-Fehler mit einem separaten Stylesheet aus, dass ich mit
Conditional Comments nur im IE einbinde. Zu den Dingern
findest du hier
(http://msdn.microsoft.com/workshop/author/dhtml/over…)
Infos, Google kennt aber sicher noch mehr (und vielleicht
sogar bessere) Seiten.

ich fass es ja nicht - da besitzt ms doch tatsächlich die Frechheit, statt ihren Browser an die Standards anzupassen, eine Extra-Funktion zu basteln, damit man extra für ihren Browser-Müll auch den ganzen Mist auf einer Seite nochmal mit anderen Mitteln einrichten kann - da kann ich dann auch gleich die anderen „wir-überlisten-IE“-Tricks benutzen … da könnt ick mir ja schon wieda uffrejen…

Aber zurück zu meiner eigentlichen Frage: ist es irgendwie möglich, einen Verweis sozusagen als Blockelement zu definieren, damit ich ihm eine Höhe zuweisen kann (und damit das Hintergrundbild für diesen Verweis vollständig darzustellen)?

Gruß
Sibylle

Hi,

bei hoover über den Link,

kannst Du mir verraten, wie man einen Link staubsaugt? Oder meinst Du hover? :wink:

Firefox macht’s genau so, wie ich mir das
gedacht habe - IE natürlich nicht :frowning:

Der IE beherrscht :hover nur bei Links.

Ich war der Meinung, die Höhe eines Links würde vom höchsten
Inhalt bestimmt

Nein, die Höhe von Inline-Elementen wird hinreichend anders (und hinreichend komplex) bestimmt. Ein weiteres Thema ist die Zeilenhöhe.

Also: wat nu? Wie krieg ich Firefox dazu, das Hintergrundbild
auf der ganzen Höhe des Links darzustellen?

Die -Elemente zu Block-Elementen zu machen ist i.d.R. die effizienteste Methode. Erst dann wirkt die height-Angabe. Wenn es im IE bei Dir anders ist, befindet sich Deine Seite vermutlich im Quirks-Mode: Beende das.

menu.menue

Erstens ist das redundant, und zweitens ist deprecated.

list-style-type:none;
list-style-position:inside;

Die zweite Angabe dürfte aufgrund der ersten nicht viel bewirken :smile:

menu.menue li { font-size:12pt;

Ist das ein Druck-Stylesheet? Anderswo macht die Einheit „pt“ wenig Sinn. Verwende für Schriften „em“ oder „%“.

Cheatah

Hi,

ich fass es ja nicht - da besitzt ms doch tatsächlich die
Frechheit, statt ihren Browser an die Standards anzupassen,
eine Extra-Funktion zu basteln, damit man extra für ihren
Browser-Müll auch den ganzen Mist auf einer Seite nochmal mit
anderen Mitteln einrichten kann

Microsoft ist berühmt dafür, Extrawürste zu braten :smile: Allerdings haben Conditional Comments keinen Bezug zu CSS, auch wenn sie dafür am häufigsten eingesetzt werden, und sollten mit allerallergrößter Vorsicht genutzt werden. Verzichte lieber auf sie zugunsten üblicher CSS-Hacks wie z.B. Star-HTML. Das ist versionsresistenter.

Aber zurück zu meiner eigentlichen Frage: ist es irgendwie
möglich, einen Verweis sozusagen als Blockelement zu
definieren,

Nicht sozusagen, sondern genau so. CSS kümmert sich kein Stück um die Begebenheiten der zugrunde liegenden Markup Language - ein hat in CSS *exakt* die selben Möglichkeiten wie ein , - , , (!) oder . Natürlich sieht der IE das ab und zu anders, und selbst in Firefox muss man mit Sonderfällen kämpfen (z.B. , welches zu mehreren Elementen aufgelöst wird). Aber: Bei Firefox kann man den Kampf gewinnen :wink:

Cheatah

1 Like

Hai, Cheatah,

kannst Du mir verraten, wie man einen Link staubsaugt? Oder
meinst Du hover? :wink:

:stuck_out_tongue_winking_eye:

Der IE beherrscht :hover nur bei Links.

das ist mir schon aufgefallen…

Nein, die Höhe von Inline-Elementen wird hinreichend anders
(und hinreichend komplex) bestimmt. Ein weiteres Thema ist die
Zeilenhöhe.

Veränderung der Zeilenhöhe erbrachte nicht den gewünschten Effekt

Die -Elemente zu Block-Elementen zu machen ist i.d.R.
die effizienteste Methode. Erst dann wirkt die height-Angabe.

naaa - super…
display:block eingetragen und mein Problem ist gelöst - fühl Dir jeknutscht

Wenn es im IE bei Dir anders ist, befindet sich Deine Seite
vermutlich im Quirks-Mode: Beende das.

In was für Mode?

menu.menue

Erstens ist das redundant, und zweitens ist
deprecated.

Is jaanich redundant! Es gibt nämlich noch ein Untermenue mit anderem Aussehen, aber daß es nicht mehr erwünscht ist, hab ich glatt übersehen (ulkig finde ich, daß beim letzten Check der Validator nicht gemault hat, obwohl es bei „strict“ gar nicht mehr zugelassen ist *wunder*)

list-style-type:none;
list-style-position:inside;

Die zweite Angabe dürfte aufgrund der ersten nicht viel
bewirken :smile:

Doch - bewirkt eine unterschiedliche Einrückung des eigentlichen Textes…

menu.menue li { font-size:12pt;

Ist das ein Druck-Stylesheet? Anderswo macht die Einheit „pt“
wenig Sinn. Verwende für Schriften „em“ oder „%“.

Mit „em“ und „%“ hab ich schon die lustigsten Sachen erlebt - insbesondere bei geschachtelten Elementen…

Ich danke Dir herzlichst
Gruß
Sibylle

Hi,

fühl Dir jeknutscht

huch Gott, kann ich davon nicht schwanger werden? :smile:

Wenn es im IE bei Dir anders ist, befindet sich Deine Seite
vermutlich im Quirks-Mode: Beende das.

In was für Mode?

Das ist der „ich gehe davon aus, dass der Autor keine Ahnung hatte und mache einfach das falsch, was Autoren ohne Ahnung gewöhnlich falsch machen“-Modus, der i.d.R. anhand der DOCTYPE-Angabe ermittelt wird.

Is jaanich redundant! Es gibt nämlich noch ein Untermenue mit
anderem Aussehen,

Das ändert nichts daran, dass man ein Element der Semantik x nicht als Element der Semantik x klassifizieren muss. Das ist wie Deutsches Welle Polen: In Farbe. Und bunt! :smile:

list-style-position:inside;

Die zweite Angabe dürfte aufgrund der ersten nicht viel
bewirken :smile:

Doch - bewirkt eine unterschiedliche Einrückung des
eigentlichen Textes…

Hoppala. Das mach bitte mit text-indent - Du verlässt Dich hier auf einen Seiteneffekt, der abhängig vom Browser nicht auftritt.

Mit „em“ und „%“ hab ich schon die lustigsten Sachen erlebt -
insbesondere bei geschachtelten Elementen…

Ja, das ist natürlich. Dennoch (bzw. auch deswegen) sind es für schriftbezügliche Werte die bestdenkbaren Einheiten.

Cheatah