|
|||
Hover-"Performance"-Problem mit dem IE8
Hallo,
ich habe eine ganz normale Tabelle (<table><tr class="test"><td>....). Das tr-Tag ordnete ich einer CSS-Klasse zu. Die Klasse hat folgende Eigenschaft: .test:hover { background-color: #FF0000; } Der Hover-Effekt geht mit den meisten gängigen Browsern (Firefox, IE, Chrome) flüssig von statten - aber nur bis zu einer gewissen Größe! Wenn die Tabelle nämlich statt 100 Zeilen z.B. 600 Zeilen lang ist, und wenn ich anschließend mit dem Mauszeiger schnelle Bewegungen mache, dann ruckelt der Hover Effekt im Internet Explorer 8 (obwohl in meinem PC ein Athlon 64 X2 6000 verbaut ist). Im Firefox läuft der Hover-Effekt noch flüssig! Wie ist das möglich? Kann ich den Hover-Effekt auch mit einem anderen CSS-Code realisieren, sodass bei größeren Tabellen der Internet Explorer keine Probleme bekommt? Wer hat Erfahrungen? Vielen Dank schon einmal für eure Bemühungen! |
Sponsored Links |
|
|||
Deine Beschreibung lässt aus, ob du jeder tr in dieser Tabelle diese Klasse zugeordnet hast. Wenn ja, könntest du der table eine id geben und die Klassen weglassen. Der Selektor wäre dann
Code:
#tabid tr:hover {} |
Sponsored Links |
|
|||
Zitat:
Ist es möglich, deine Variante anzuwenden, und gleichzeitig zu sagen: "auf den ersten zwei Zeilen darf dieser Code NICHT zutreffen". Geht sowas? An dieser Stelle habe ich noch eine weitere Frage: Ich möchte jede Spalte eine gewisse Breite zuordnen. Muss ich diese CSS-Formatierung (Breite) in jeder Zeile machen, oder reicht die Formatierung der ersten Zeile? |
|
|||
Das funktioniert leider nicht. Die Formatierung der gesamten Tabelle (#tabid tr:hover {}) hat anscheinend eine höhere Priorität als die Klasse, die der ersten beiden Zeilen zugeordnet wurden.
|
|
|||
Zitat:
Wenn du in dem von dir genannten Selektor die Klasse hinzufügst, funktioniert Praktikants Vorschlag.
__________________
Über Internet Explorer 8: Noch bis 8. April 2014 wird der Internet Explorer 6 mit Sicherheitsupdates versorgt. Bereits jetzt kann dieser Browser aber vollständig durch den IE8 ersetzt werden. Ältere Betriebssysteme und Browserversionen werden von Microsoft nicht mehr unterstützt. Auch Programme, die den IE7 benötigen, sind kein Argument gegen IE8, da dieser über entsprechende Kompatibilitätsschichten verfügt. Ab sofort gilt daher der Internet Explorer 8 als vorausgesetzer Mindeststandard. |
|
|||
Zitat:
Wie war dein Beitrag nun gemeint? Die ID ebenfalls als Klasse umwandeln? |
|
|||
Zitat:
Da du deinen Versuch nicht mit Quelltext belegst, muss ich vermuten: Die ersten beiden Zeilen deiner Tabelle besitzen eine Klasse, sagen wir ".spezielle-zeile". Du versuchst vermutlich diese mit dem Selektor ".spezielle-zeile:hover {}" anzusprechen. Da dieser Selektor die Spezifität 0 2 0 besitzt, wird er von dem Selektor "#tabid tr:hover {}" überschrieben, denn der besitzt die Spezifität 1 1 1. Theoretisch soltlest du mit dieser Information (und dem verlinkten Artikel) in der Lage sein, das Problem zu lösen. Bemühe dich bitte, die Regeln der Spezifität zu verinnerlichen, dann kannst du Probleme wie dieses in Zukunft vermeiden. Du musst die Spezifität des Selektors ".spezielle-zeile" erhöhen: "#tabid .spezielle-zeile" (Spezifität 1 2 0).
__________________
Über Internet Explorer 8: Noch bis 8. April 2014 wird der Internet Explorer 6 mit Sicherheitsupdates versorgt. Bereits jetzt kann dieser Browser aber vollständig durch den IE8 ersetzt werden. Ältere Betriebssysteme und Browserversionen werden von Microsoft nicht mehr unterstützt. Auch Programme, die den IE7 benötigen, sind kein Argument gegen IE8, da dieser über entsprechende Kompatibilitätsschichten verfügt. Ab sofort gilt daher der Internet Explorer 8 als vorausgesetzer Mindeststandard. |
|
|||
Mich würde eigentlich interessieren, ob der in meinem Beitrag vorgeschlagene Verzicht auf eine Klasse im Selektor ( und auch der Verzicht auf all die Klassen an den tr) etwas an der Performance im IE8 ändert.
|
Sponsored Links |
|
|||
@gato: jetzt funktioniert es! Die Spezifitäten kannte ich bisher noch nicht. Danke!
@IChao: am IE konnte ich noch keine Tests fahren, da meine Entwicklungsumgebung auf Linux läuft. Sobald ich es getestet habe, werde ich dich davon unterrichten. |
Sponsored Links |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Dynamische Navigation mit CSS - Hover Problem | betzebu | CSS | 8 | 22.02.2012 23:18 |
Frage zu Hover und IE8 | Borsti300378 | CSS | 7 | 27.07.2010 22:10 |
Abgerundete Ecken: Hover Problem | Danto | CSS | 1 | 17.03.2010 11:00 |
CSS Einsteiger bittet um Hilfe | pcklinik | CSS | 0 | 06.09.2007 14:40 |
Session / Cookie Problem mit dem IE, sporadisch | Boris | Serveradministration und serverseitige Scripte | 14 | 06.09.2007 12:54 |