Problem mit der Klassenangabe
kerschi
- css
0 Tobias Kloth0 kerschi
0 Tim Tepaße0 kerschi0 kerschi0 Tobias Kloth0 Kerschi
0 Tim Tepaße0 kerschi0 Tim Tepaße0 Kerschi
0 Kerschi
Moin,
Folgendes:
<td class="menue2"><p>
<a href="index.htm" class="menue1">startseite</a><br>
<a href="news.htm" class="menue1">neuigkeiten</a><br>
<a href="links.htm" class="menue1">links</a><br>
<a href="gallery.htm" class="menue1">gallerie</a><br>
<a href="forum.htm" class="menue1">forum</a><br>
<a href="guestbook.htm" class="menue1">gästebuch</a><br>
<a href="contact.htm" class="menue1">kontakt</a></p>
</td>
So ungefähr sieht der Quelltext aus.
Ich gebe für die spalte eine klasse an (class=menue2). Ich will aber für manche Textteile eine andere Klasse (class=menue1). Das wird irgendwie ignoriert und es wird ncht auf die klasse innerhalb des links geachtet, nur auf die klasse der ganzen spalte.
Was mach ich falsch ?
Vielen Dank
mfg
kerschi
Hallo kerschi,
Ich gebe für die spalte eine klasse an (class=menue2). Ich will aber für manche Textteile eine andere Klasse (class=menue1).
für manche? für alle! ;-)
Das wird irgendwie ignoriert und es wird ncht auf die klasse innerhalb des links geachtet, nur auf die klasse der ganzen spalte.
und wie sieht dein css dazu aus? was sagt http://jigsaw.w3.org/css-validator/ zu deinem css? hast du vielleicht einen Link, unter dem man sich das anschauen kann?
Grüße aus Nürnberg
Tobias
Hm der Validator hatte noch nie was dagegen ;-) !
Der Link is schon bei meiner Antwort auf die andere Antwort !
Danke !
mfg
kerschi
Hallo kerschi,
Ich gebe für die spalte eine klasse an (class=menue2). Ich will aber für
manche Textteile eine andere Klasse (class=menue1). Das wird irgendwie
ignoriert und es wird ncht auf die klasse innerhalb des links geachtet, nur
auf die klasse der ganzen spalte.
Was mach ich falsch ?
Daß Du nur den HTML-Quelltext angibst, nicht Deine CSS-Formatierungen.
Denn beim Inspizieren des Fitzelchen HTML-Quelltextes kann ich keinen
Fehler feststellen.
Idealerweise wäre es, wenn Du die ganze Seite kurz online stellen könntest.
Nebenbei: Für eine Auflistung von Links in einem Menü, denn das ist es
anscheinend, würde ich das HTML-Element Liste nehmen, nicht durch
Zeilenumbrüche in einen Absatz eingeschlossene Links.
Nochmal nebenbei: Dein Quelltext ist für mich etwas aufgebläht. Ich
hätte nicht allen Links diese Klasse verliehen, sondern dem die
Links einschließenden Element (hier: p) und die Links dann über
einen verschachtelten Selektor angesprochen. Aber da weiß ich nicht,
wie das mit dem Rest Deiner Seitenstruktur koexistieren würde, da
Du uns ja nur ein Schnippelchen gegönnt hast. :-)
Hi,
http://pun.kerschbaumer.bei.t-online.de/tkneu
Ich geb dir recht, dass mein Quelltext wahrscheinlich viel zu aufgebläht und umständlich ist, aber ich habe mein bestes gegeben (zumindest versucht hab ichs)! immer maln bisschen was nachschaun etc..... ;-)
Aber nun könnt ihr euch das mal anschaun, da der Link ja jetzt da ist !
Danke vielmals !
mfg
kerschi
ps: dauert vielleicvht nochn bisschen bis t-onlibne den webspace aktualisiert!
Hab den Link der css Datei vergessen :http://pun.kerschbaumer.bei.t-online.de/tkneu/css.css
Hallo Tobias(?),
http://pun.kerschbaumer.bei.t-online.de/tkneu
</faq/#Q-19>
Aber nun könnt ihr euch das mal anschaun, da der Link ja jetzt da ist !
bist du sicher, dass du class="menue2" im Code stehen hast? ich sehe da nämlich nichts... (wenn du statt ".menue2" einfach ".menue1 a" o.ä. schreibst, sollte es auch funktionieren)
ps: dauert vielleicvht nochn bisschen bis t-onlibne den webspace aktualisiert!
ich habe die Datei kurz vor dem Absenden des Postings das letzte mal angeschaut...
Grüße aus Nürnberg
Tobias
Hi,
ne das mit dem menue 2 und so hab ich jetzt rausgelassen, aber ich hätte gerne , dass immer ein Link in dem rechten menue eine andere farbe hat, das hätte ich dann als css-menue2 bezeichnet und die normale schwarze art als menue1.
Blos das hat irgendwie nich so ganz geklappt !
Danke
kerschi
Hallo kerschi,
Aber nun könnt ihr euch das mal anschaun, da der Link ja jetzt da ist !
Gemacht. Ich vermute, Du willst die Links im Menü anders haben, als die
Links im Rest des Dokumentes, ja? Ich vermute es liegt daran, daß Du
generell Linkfarben definiert hast.
Erklärung:
Du hast folgende verschachtelte Struktur in Deinem Dokument:
<td class="menue1">
<p>
<a href="">...
<br>
<a href="">...
...
Also drei Stufen von Verschachtelung, jede einzelne Verschachtelung habe
ich hier mal mit zwei Leerzeichen gekennzeichnet.
Dazu hast Du folgende CSS-Regeln (ich konzentriere mich mal auf das
wesentliche):
(1) a {...}
(2) a:link {...}
(3) a:visited {...}
(4) a:hover {...}
(5) .menue {...}
Was passiert nun, wenn der Browser das Dokument durchläuft und die
CSS-Regeln anwendet? Machen wir das mal nach.
<td class="menue1"> (Wende CSS-Regel (5) an)
<p> (Erbe die Eigenschaften von (5))
<a href="">... (Wende die CSS-Regeln (1) bis (4) an)
<br>
<a href="">... (Wende die CSS-Regeln (1) bis (4) an)
...
Das Auszeichnen von der Tabellenzelle (Übrigens brauchst Du das
Absatzelement eigentlich garnicht) mit der Klasse "menue1" hast
Du wahrscheinlich meinem Vorschlag zu verdanken. Mist.
Wie löst Du jetzt das Dilemma? Du willst folgendes sagen:
»Gib den Links innerhalb des Elementes mit der Klasse "menue1" andere
Eigenschaften, als den generell definierten Links.«
Dafür gibt es in CSS verschachtelte Selektoren, die dann ungefähr so
aussehen...
.menue1 a:link {...}
.menue1 a:visited {...}
... und die nur auf a-Elemente wirken, die sich innerhalb von "menue1"
befinden. Im CSS-Dokument solltest Du diese allerdings nach (!) der
Deklaration der allgemeinen Link-Selektoren (a, a:link) definieren, weil
sie sonst wieder überschrieben werden.
Hmm. Oder meinst Du doch wieder etwas anderes?
Danke erstmal für deinen tollen Beitrag.
Ich denke, dass ich das ganze jetzt einigermaßen durchblickt hab und auch verstanden war, dass das andere irgendwie sinnfrei war.
Ich werd das dann mal so machen wie du gemeint hast ! praktisch für die links im menue1 eigen definieren und das nach der allgemeinen definition.
Gibt es eigentlich auch einen Befehl dafür, dass derjenige Link, auf dem man sich befindet (z.b. hauptseite oder kontakt) solange man sich auf der entsprechenden seite aufhält in einer anderen farbe erscheint, aber nach verlassen wieder normal angezeitgt wird ?
Ich hoffe man hat es wenigstens einigermaßen verstehen können!
Also ich mein : wenn ich mich auf der eingangsseite befinde soll das "startseite" im menue z.b. rot sein , ohne dass ich es anklicke, also nicht a:visited ?! Oder muss ich bei dem ganzen einfach auf jeder seite den entsprechenden Link einfärben ?
Mfg
kerschi
ps: Gute Nacht lol
Hallo kerschi,
Gibt es eigentlich auch einen Befehl dafür, dass derjenige Link, auf dem man
sich befindet (z.b. hauptseite oder kontakt) solange man sich auf der
entsprechenden seite aufhält in einer anderen farbe erscheint, aber nach
verlassen wieder normal angezeitgt wird ?
Nein. Auf der öffentlichen Mailingliste der CSS-Entwicklergruppe wurde
das zwar mehrmals als Pseudoklasse vorgeschlagen, hat es bislang aber
in keinen CSS-Standard, auch nicht in den kommenden, CSS 3, geschafft.
Die einzige Möglichkeit ist, es, jede Seite anders zu gestalten,
beispielsweise eine Klasse .hierbinich zu gestalten und dann auf
der jeweiligen Seite, den jeweiligen Link damit zu gestalten.
Was es geben wird in CSS 3 ist ein Pseudoklasse namens :target, die auf
die Elemente zutrifft, die ein Attribut id="blub" haben, daß vorher
mittels der URL example.com/bla#blub, also als Anker angesprungen
wurde. Ich bin mir nicht sicher, aber moderne Browser integrieren dies
schon teilweise; ich glaube ein aktueller Mozilla beherrscht diese
Pseudo-klasse schon.
Hi,
naja, wenn das so ist, werd ich wohl auf jeder seite denjenigen link andrs gestalten (mit einer klasse), den es wäre mir schon recht, wenn es mit allen browsern gehen würde.
Danke
mfg
kerschi
Nochwas: Ich finde es total nett und super, dass es hier Leute gibt, die Fragen, die für sie vermeindlich leicht sind, so gut beantworten´und damit leuten helfen, die sich (noch) nicht so gut auskennen! Danke !
Hallo,
meine css Datei hat jetzt ungefähr folgende Struktur:
1. Definition für allgemeine Links
2. Dann folgt .menue1 (menue1 formatiert mein Menue auf der rechten
Seite und nutzt die Definition für algemeine Links)
3. Jetzt kommt .menue2 (menue2 soll einen Link des Menues
[z.b. "Startseite"] formatieren.
4. nach .menue2 folgt etwa dies:
.menue2 a:link {
color : #B55E54;
text-decoration : none;
}
.menue2 a:visited {
color : #B55E54;
text-decoration : none;
}
.menue2 a:hover {
text-decoration : underline;
}
Praktisch werden nun die Links neu definiert (innerhalb
von .menue2).
Nun kommt wieder meine Konstruktion im Html Dokument:
<td class="menue1">
<p>
<a href="" class="menue2">...<br>
<a href="">...
...
</p>
</td>
Nun passiert doch folgendes:
Der Browser formatiert die Spalte mit der Klasse .menue1.
Nun kommt er zu dem ersten Link, der aber anders definiert ist (class="menue2"). Jetzt müsste er doch den Link so gestalten wie ich es in Punkt 4 in meiner css Datei habe.Und die restlichen Links kann er dann wieder in der allgemeinen Definition gestalten.
Habe ich hier irgendwo einen logischen Fehler, oder warum funktioniert das nich ?
Danke schonmal !
Gruß
Kerschi
ps: das Ganze ist noch nich hochgeladen, d.h. auf meinem webspace lagern nur die alten Dateien.
Hallo Kerschi,
.menue2 a:link { (1)
color : #B55E54;
text-decoration : none;
[...]<td class="menue1">
<p>
<a href="" class="menue2">...<br> (2)
<a href="">...
...
</p>
</td>
Habe ich hier irgendwo einen logischen Fehler, oder warum funktioniert das nich ?
Die von mir mit (1) markierte Zeile bedeutet: "Formatiere alle Links innerhalb der Elemente der Klasse menue2 wie folgt...". Das einzige Element dieser Klasse ist aber der Link in der mit (2) markierten Zeile, der natürlich keine Links enthält, die so formatiert werden könnten.
Eine Möglichkeit, das jetzt mit dem CSS zu machen das Du schon hast (es gibt sicherlich andere Lösungen), wäre:
<td class="menue1">
<p class="menue2"> (3)
<a href="">...
</p>
<a href="">...
...
</td>
(3) Alle Links innerhalb dieses Absatzes bekommen die entsprechenden Eigenschaften, die Links ausserhalb bekommen die allgemein definierten Linkeigenschaften.
Grüße
Andreas
Danke erstmal !
Hm das hab ich auch versucht ja.
Funktioniert soweit auch ganz gut,blos dass ich dann so einen großen absatz habe.
MFG
kerschi
Hallo kerschi,
Funktioniert soweit auch ganz gut,blos dass ich dann so einen großen absatz habe.
Den kannst Du ja mit CSS wegformatieren.
Grüße
Andreas
Den kannst Du ja mit CSS wegformatieren.
Stimmt eigentlich - hab nich dran gedacht !
Is aber umständlich lol !
Danke
Gruß kerschi
Hallo kerschi,
Is aber umständlich lol !
In dem Fall ja. Mein ursprünglicher Vorschlag war aber auch nicht die beste Lösung, sondern das was mir spontan eingefallen ist. Da kann sicher noch was optimiert werden.
Grüße
Andreas
Jetzt hab ich noch ein 2tes Problem:
Meine Tabelle hat die Eigenschaft: cellpadding="0" cellspacing="0"
Nun will ich das mit css ausdrücken !
Was sind denn da die entsprechenden Befehle ?
Kann mir da wer helfen?
Wäre toll !
Danke
mfg
kerschi
Hallo.
Meine Tabelle hat die Eigenschaft: cellpadding="0" cellspacing="0"
Nun will ich das mit css ausdrücken !
Was sind denn da die entsprechenden Befehle ?
Der Befehl lautet: [http://selfhtml.teamone.de/css/eigenschaften/tabellen.htm] lesen! ;-)
MfG, at
ich fibnd das irgendwie nicht .....
wenn ich meine tabelle dann mit css formatiere, wird sie völlig enstellt ;-)
Hilfe ?!?!?!?!?
MFg
kerschi
Hallo.
ich fibnd das irgendwie nicht .....
Das wird schon :-)
wenn ich meine tabelle dann mit css formatiere, wird sie völlig enstellt ;-)
Was geschieht, wenn du was schreibst? Was hast du schon alles ausprobiert?
Hilfe ?!?!?!?!?
Konkrete Hilfe gibt es leider nur bei konkreten Problemen. Der Ball liegt also wider bei dir ;-)
MfG, at
Das Problem ist, meine Tabelle hat die Eigenschaften cellpadding=0 und cellspacing=0, blos leider weiß ich nicht was dem in css entspricht....bzw. gibt es überhaupt befehle, die dem genau entsprechen oder muss ich das irgendwie umgehen ?
Das passende hab ich leider auch nicht in selfHTML gefunden, habs zwar mit einigen versucht, z.b. padding:0px; aber das half nix....
MFg
kerschi
Hallo.
Das Problem ist, meine Tabelle hat die Eigenschaften cellpadding=0 und cellspacing=0, blos leider weiß ich nicht was dem in css entspricht....bzw. gibt es überhaupt befehle, die dem genau entsprechen oder muss ich das irgendwie umgehen ?
Gibst du die Attribute "cellpadding" und "cellspacing" nur aus Tradition an oder weißt du, was sie bewirken?
Das passende hab ich leider auch nicht in selfHTML gefunden, habs zwar mit einigen versucht, z.b. padding:0px; aber das half nix....
Aber "border-collapse" und "border-spacing" sind dir ein Begriff?
Sieh dir vielleicht http://selfhtml.teamone.de/css/eigenschaften/tabellen.htm noch einmal etwas genauer an.
MfG, at
Gibst du die Attribute "cellpadding" und "cellspacing" nur aus Tradition an oder weißt du, was sie bewirken?
Hm das hat mit dem Abstand des Inhaltes zu tun und das andere mit den zellenrahmen oder ?!
Aber "border-collapse" und "border-spacing" sind dir ein Begriff?
Hab ich in meiner cs datei auch schon drin gehabt hat aber nix geändert !
Hallo.
Aber "border-collapse" und "border-spacing" sind dir ein Begriff?
Hab ich in meiner cs datei auch schon drin gehabt hat aber nix geändert !
Dann wurde die Seite vielleicht aus dem Cache geladen, denn genau für diese Funktion sind diese Attribute gedacht -- wie du auch einigen anderen Threads innerhalb des Forums oder Archivs entnehmen kannst.
Stelle doch vielleicht einmal einige Versuche online, denn vielleicht validiert deine ja gar nicht und der Browser verschluckt sich daran.
MfG, at
Moin,
also ich habe nun das ganze mal etwas zusammengefasst und mit allen ergebnissen und Dateien hochgeladen.
Siehe Link
Mfg
kerschi
Hallo.
Siehe Link
Habe ich mir angesehen. Hast du einmal die Angabe von "border-width" in Beracht gezogen?
MfG, at
hi,
Hast du einmal die Angabe von "border-width" in Beracht gezogen?
Habe ich ausprobiertja, aber das hilft auch nichts !
MFG
kerschi