- 16.04.2008 10:26 #1Neuer Benutzer
- Registriert seit
- 03.03.2008
- Beiträge
- 29
- Renommee-Modifikator
- 0
Navi änder bei hover nur Schriftbereich? Hallo,
ich versuche mich gerade an einer Navi mit CSS.
Hier hab ich 2 Fragen:
1. Warum ändert sich bei A:hover nicht der komplette Hintergrund
2. Warum steht der Text in der Vorschau oben und nicht in der Mitte. In der Exploreransicht ist er jedoch zentriert
Hier der Code:
WÄre super wenn mir das jemand erklären könnte.HTML-Code:<head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>Unbenanntes Dokument</title> <style type="text/css"> .nav { font-family:Verdana, Arial, Helvetica, sans-serif; font-size:x-small; color:#000000; background-color:#e1e3e8; width:110px; height:35px; text-align:center; } :link { color: #000000; text-decoration: none;} A:link { color: #000000; text-decoration: none; } A:visited { color: #000000; text-decoration: none;} A:active { color: #ffffff; text-decoration: none; background-color:#f8f8f8; color:#333333;} A:hover { color: #ffffff; text-decoration: none; color:#333333; background:#f8f8f8;} </style> </head> <body> <table cellspacing="0" cellpadding="0" border="0" width="770" align="center"> <tr> <td class="nav"><a href="" style="width:110px; height:35px;">Test1</a></td> <td class="nav"><a href="" style="width:110px; height:35px;">Test1</a></td> <td class="nav"><a href="" style="width:110px; height:35px;">Test1</a></td> <td class="nav"><a href="" style="width:110px; height:35px;">Test1</a></td> <td class="nav"><a href="" style="width:110px; height:35px;">Test1</a></td> <td class="nav"><a href="" style="width:110px; height:35px;">Test1</a></td> <td class="nav"><a href="" style="width:110px; height:35px;">Test1</a></td> </tr> </table> </body>
PS: Komplexe Beispiele hab ich schon gesehen(Mit divs h1, ul usw.). Mir geht es nur um das Verständnis.
Danke und Gruß
- 16.04.2008 11:01 #2
Hi,
die Reihenfolge der Pseudoklassen ist nicht richtig.
so muss es aussehen:
a:link
a:visited
a:hover, a:focus
a:active
zu 2 müssen sich mal die Tabellenexperten äußern.
koslowski
- 16.04.2008 12:28 #3Neuer Benutzer
- Registriert seit
- 03.03.2008
- Beiträge
- 29
- Renommee-Modifikator
- 0
Hallo,
wenn ich das aber so umstelle wie geschrieben, ändert sich ja aber trotzdem nicht der komplette Hintergrund...
Gruß
- 16.04.2008 12:58 #4
Natürlich ändert sich der komplette Hintergrund des Elements <a>.
Denn das :hover bezieht sich natürlich nur auf den Link, nicht auf die Tabellenzelle.
- 16.04.2008 15:24 #5Neuer Benutzer
- Registriert seit
- 03.03.2008
- Beiträge
- 29
- Renommee-Modifikator
- 0
Aha, ok, habe nun versucht das mal anders zu lösen aber auch hier ist irgendwie ein Denkfehler meinerseits drin.
Problem1: Der weise Zwischenraum soll weg
Problem2: Wie krieg ich die Felder größer?
Danke und GrußHTML-Code:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title></title> <style type="text/css"> ul#Navigation { text-align: center; } ul#Navigation li { display:inline; } ul#Navigation a, ul#Navigation span { text-decoration: none; color: #FFFFFF; background-color: #343434; font-family:Verdana, Arial, Helvetica, sans-serif; } * html ul#Navigation a, * html ul#Navigation span { width: 1em; /* nur fuer IE 5.0x erforderlich */ w/idth: auto; /* sicherheitshalber fuer IE 6 zurueckgesetzt */ } ul#Navigation a:hover, ul#Navigation span { background:#f8f8f8; color:#000000; font-family:Verdana, Arial, Helvetica, sans-serif;, } </style> </head> <body> <h1></h1> <ul id="Navigation"> <li><a href="">Test1</a></li> <li><a href="">Test1</a></li> <li><a href="">Test1</a></li> <li><a href="">Test1</a></li> <li><a href="">Test1</a></li> <li><a href="">Test1</a></li> </ul> </body> </html>
chris24
- 16.04.2008 15:48 #6
- 16.04.2008 15:52 #7
Hi,
der weisse Zwischenraum heißt "Whitespace" und entsteht durch Zeilenumbrüche oder Leerstellen im Quelltext, besonders bei der von dir gewählten display:inline-Variante für die Navi.
Du kannst entweder im Quelltext die ganze ul #navigation ohne Umbrüche und Leerstellen hintereinander schreiben. Das wird dann aber etwas unübersichtlich.
Oder du gibst #navigation li einen negativen rechten margin (margin-right:-0.4em z.B.).
Oder du wählst die Floatvariante um dein Navi auf die Reihe zu bekommen.
koslowski
edit in versch. Arten der Navis kannst du dich
hier
einarbeiten.
Geändert von koslowski (16.04.2008 um 16:09 Uhr)
- 16.04.2008 16:17 #8Neuer Benutzer
- Registriert seit
- 03.03.2008
- Beiträge
- 29
- Renommee-Modifikator
- 0
@koslowski: Vielen Dank, das mit dem negativen Wert hat wunderbar geklappt. Super

@Efchen: sorry, ich hab bei deinen Beitrag jetzt nicht richtig verstanden was du damit meinst. Wenn ich jetzt bei a und bei li jeweils da padding angebe, ändert sich ja aber auch die Größe wenn ich den Text ändere. Wie muss das denn sein wenn ich z. B. fest 100px breit und 30px hoch möchte? Oder muss ich das über eine normale tabelle machen wo ich das dann definiere?
Bzw. ist es ja so das ich, wenn ich padding angebe, wieder den gleichen Effekt habe das nur der Link beim hover sich ändert, der Rest aber nicht. Ich steh hier auf dem Schlauch, ist echt eine schwere Geburt.
Vielen Dank schonmal für die Hilfe.Geändert von Chris24 (16.04.2008 um 16:33 Uhr)
- 16.04.2008 16:32 #9
- 17.04.2008 07:55 #10
Genau.
Das Problem ist, dass Du Deine Listenelemente zum Inline-Element gemacht hast. Dann klappen width+height nicht mehr. Statt display:inline; solltest Du float:left; verwenden, dann kannst Du auch eine feste Größe angeben.Wie muss das denn sein wenn ich z. B. fest 100px breit und 30px hoch möchte?
Was hat denn das jetzt mit einer Tabelle zu tun, wenn Du vom Design redest? Eine Tabelle ist zur Auszeichnung von tabellarischen Daten, aber wir reden doch vom Design und nicht der Struktur Deines Inhalts.Oder muss ich das über eine normale tabelle machen wo ich das dann definiere?
Deswegen passt man die Größe des Links der Größe des Listenelements an, damit die gleich groß sind.Bzw. ist es ja so das ich, wenn ich padding angebe, wieder den gleichen Effekt habe das nur der Link beim hover sich ändert, der Rest aber nicht.
Gruß,
-Efchen
Aktive Benutzer
Aktive Benutzer
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
Ähnliche Themen
-
:hover geht nach onclick nicht mehr
Von schlurpsel im Forum CSSAntworten: 2Letzter Beitrag: 14.04.2008, 08:05 -
[3ColumnsLayout] Flexible, mittlere Spalte
Von spacegaier im Forum CSSAntworten: 4Letzter Beitrag: 05.10.2007, 13:18 -
Navigation mit Hover und keinen Ladezeiten
Von Andreas84 im Forum HTML und XHTMLAntworten: 5Letzter Beitrag: 20.04.2007, 19:39 -
drop dwon menu, aber nocha oben !!!
Von gimiatlicho im Forum CSSAntworten: 4Letzter Beitrag: 13.04.2007, 15:25 -
Pseudoklasse :hover & <p>
Von Frank im Forum CSSAntworten: 8Letzter Beitrag: 02.02.2006, 22:48



LinkBack URL
About LinkBacks


Lesezeichen