formatierung auf a-tag vererben
Golmo
- css
Ist es möglich, eine CSS-Formatierung auf ein a-Tag zu vererben?
Der Code sollte folgendermaßen aussehen:
<p class="nav">Test <a href="bla">test</a> test</p>
wobei <a href="bla">test</a> wie in "nav" definiert dargestellt wird, ohne dass ich extra <a class="nav" href="bla">test</a> notiere. Die Formatierungen von "nav", die in <p> zugewiesen werden, sollen also auch automatisch dem a-tag zugewiesen werden.
hi golmo <-- begrüssung
Ist es möglich, eine CSS-Formatierung auf ein a-Tag zu vererben?
ja
Der Code sollte folgendermaßen aussehen:
<p class="nav">Test <a href="bla">test</a> test</p>
geht so nicht.
was du kannst ist global für a einen style festlegen:
z.b. a { text-decoration: none; }
so ist der link nicht unterstrichen, sieht aber trotdem nicht gleich aus --> farbe.
ich würde es so machen:
css:
.nav {
diverse formatierungen
}
html:
<p class="nav">Test<a href="bla" class="nav">test</a> test</p>
und tschüss <-- verabschiedung
siramon
Hallo Siramon,
Der Code sollte folgendermaßen aussehen:
<p class="nav">Test <a href="bla">test</a> test</p>
geht so nicht.
bitte entschuldige, aber da muß ich Dich berichtigen ;)
Ich habe es jetzt nicht extra probiert, aber imho ist
<style type="text/css">
<!--
.nav,p.nav a { color:#000000; }
-->
</style>
zulässiges CSS und sollte auch in den aktuellen Browsern (dazu
zähle ich Netscape < 6.0 nicht!) funktionieren.
Wenn nicht, dann bitte ich meinen Irrtum zu entschuldigen ...
Viele Grüße aus Dresden,
Stefan Einspender
hallo stefan
<p class="nav">Test <a href="bla">test</a> test</p>
geht so nicht.
bitte entschuldige, aber da muß ich Dich berichtigen ;)
Ich habe es jetzt nicht extra probiert, aber imho ist
<style type="text/css">
<!--
.nav,p.nav a { color:#000000; }
-->
</style>
zulässiges CSS und sollte auch in den aktuellen Browsern (dazu
zähle ich Netscape < 6.0 nicht!) funktionieren.
Wenn nicht, dann bitte ich meinen Irrtum zu entschuldigen ...
sollte zulässiges css sein stimmmt.
aber bist du so genug flexibel?
gehen wir davon aus, dass golmo keine frames benutzt, dann hat er sicher auch noch andere links auf der seite und nicht nur in der navigation im style nav.
ich wollte ihm eigentlich nur zeigen, dass ich in seiner situation für eine class plädiere und die class von p und a in der navigation gleich benamsen würde.
meine aussage "geht so nicht" sollte sich nicht auf die syntax beziehen, sondern mit dem beispiel darunter wollte ich ihm die imho bessere lösung zeigen.
grüsse
siramon
Hallo Siramon,
.nav,p.nav a { color:#000000; }
aber bist du so genug flexibel?
gehen wir davon aus, dass golmo keine frames benutzt, dann hat er sicher auch noch andere links auf der seite und nicht nur in der navigation im style nav.
Und? Sollte doch überhaupt kein Problem sein. Mit der Zeile oben
sprichst Du nur die Links an, die innerhalb eines Absatzes liegen,
welcher der Klasse 'nav' abgehört und ausserdem werden noch alle
Elemente der Klasse 'nav' angesprochen.
Alternativ sind noch die beiden folgenden Möglichkeiten denkbar:
p.nav,p.nav a { color:#000000; }
damit werden nur noch Absätze der Klasse 'nav' und darin liegende
Links angesprochen.
.nav,.nav a { color:#000000; }
damit werden alle Links innerhalb von Elementen der Klasse 'nav' und
alle Elemente der Klasse 'nav' angesprochen.
ich wollte ihm eigentlich nur zeigen, dass ich in seiner situation für eine class plädiere und die class von p und a in der navigation gleich benamsen würde.
meine aussage "geht so nicht" sollte sich nicht auf die syntax beziehen, sondern mit dem beispiel darunter wollte ich ihm die imho bessere lösung zeigen.
Verstehe ich ehrlich gesagt nicht, imho ist "mein" Beispiel deutlich
"besser" und auch sehr flexibel. Ich wüßte keine Situation, wo dieser
Aufbau nicht flexibel genug ist ...
Viele Grüße aus Dresden,
Stefan Einspender
PS:Wie auch immer, Golmo kann sich ja die gewünschte Variante raus-
suchen, allerdings hat er imho Deine Lösung in <?m=129944&t=24913>
schon ausgeschlossen oder lese ich da etwas falsch heraus?
hallo stefan
.nav,p.nav a { color:#000000; }
[...]
Und? Sollte doch überhaupt kein Problem sein. Mit der Zeile oben
sprichst Du nur die Links an, die innerhalb eines Absatzes liegen,
welcher der Klasse 'nav' abgehört und ausserdem werden noch alle
Elemente der Klasse 'nav' angesprochen.
Alternativ sind noch die beiden folgenden Möglichkeiten denkbar:
p.nav,p.nav a { color:#000000; }
damit werden nur noch Absätze der Klasse 'nav' und darin liegende
Links angesprochen.
.nav,.nav a { color:#000000; }
damit werden alle Links innerhalb von Elementen der Klasse 'nav' und
alle Elemente der Klasse 'nav' angesprochen.
ich habe jetzt gerade zwei sachen gelernt ;-)
1. genau lesen speziell kommas nicht überlesen
2. und genau darum ist mir 1. passiert:
ich wusste nicht, dass man element in css in dieser art verschachteln kann.
ich muss dir danke!
für mich haben sich horizonte geöffnet!
werde mich gleich ans redesign des aktuellen projektes machen (css-bezogen)!
danke und gruss
siramon
Hallo nochmal,
für mich haben sich horizonte geöffnet!
eigentlich will ich ja nicht Deinen finanziellen Ruin verursachen,
aber vielleicht läßt Du Dir bei Gelegenheit mal ein CSS-Buch von
wem auch immer schenken, das meiner Meinung nach ganz gut als
Grundlage für weitere Horizonte geeignet ist:
http://www.amazon.de/exec/obidos/ASIN/3815821029/
Ich habe es mir hauptsächlich gekauft, weil die drei Autoren des
Buches hier im Forum nicht unbekannt sind ;)
Inhaltlich ist das Buch sehr empfehlenswert.
Viele Grüße aus Dresden,
Stefan Einspender
PS:Falls hier einer der drei Autoren mitliest, da war mal so ein Ge-
rücht, es gebe irgendwann eine Neuauflage, läßt sich da eventuell
schon etwas sagen?
Hallo Stefan
Inhaltlich ist das Buch sehr empfehlenswert.
<Gesichtsfarbe type="errötend">Danke.</Gesichtsfarbe>
PS:Falls hier einer der drei Autoren mitliest, da war mal so ein Ge-
rücht, es gebe irgendwann eine Neuauflage, läßt sich da eventuell
schon etwas sagen?
Wo hast du das Gerücht denn aufgeschnappt? Das Buch ist noch kein halbes Jahr auf dem Markt und schon giert das Netz nach Neuauflagen *staun*
Laß erst einmal die Version 8 von SELFHTML erscheinen, an der zumindest ein Teil des Autoren arbeitet, und dann sehen wir mal weiter. Oder wie heißt es so schön: Nichts ist unmöglich ;-)
Grüßlis
Kess
Hallo Kess,
Wo hast du das Gerücht denn aufgeschnappt? Das Buch ist noch kein halbes Jahr auf dem Markt und schon giert das Netz nach Neuauflagen *staun*
na gieren ist nicht so ganz richtig, ich habe es nur mal irgendwo ge-
hört, kurz nachdem es erschienen war. Und erstmal riesig geärgert,
dachte ich doch an die verfrühte Investition ;)
Wenn es aber jetzt noch etwas dauert, dann ist es mir auch recht,
Farbabbildungen brauche ich nicht und wenn dann doch mal etwas in-
haltlich nicht 100% ok ist, dann gibt es ja noch das W3C :)
Meine vermeintliche Quelle nenne ich mal lieber nicht, um hier nix
falsch zu sagen, wahrscheinlich hatte ich von dem neuen Buch nur ge-
träumt *g*
Laß erst einmal die Version 8 von SELFHTML erscheinen, an der zumindest ein Teil des Autoren arbeitet, und dann sehen wir mal weiter.
Ja, bei SELFHTML giert das Netz nach einer Neuauflage, habe ich zu-
mindest mal irgendwo gehört ...
Viele Grüße aus DD,
Stefan E.
hallo siramon,
ich wusste nicht, dass man element in css in dieser art verschachteln kann.
man kann noch viel mehr machen, aber es scheitert an den browser:
p.nav a[href] { deine css angaben }
trifft nur zu wenn <a> ein href attribut hat und sich ine eonem <p> mit der class="nav" befindet. (also z.B. nicht bei <a name="">
oder
a[href="http://deineseite.de/"] { deine css angaben }
trifft nur zu, wenn im <a> href="http://deineseite.de/" ist.
und es ist auch möglich:
p.nav > a { deine css angaben } zu notieren.
der unterschied zwischen 1) p.nav a und 2) p.nav > a ist, dass 1) trifft auf alle <a> wenn sie irgendwo im <p> vorkommen (also auch dann: <p>ein text <span>der einen<a href="#">link</a> enthält</span></p>) aber 2) trifft nur wenn <a> direkt in <p> steht.
es ist noch auch möglich:
p.nav * [href] { deine css angaben } zu notieren, was auf alle elemente mit einem href attribut innerhalb von <p class="nav"> treffen würde.
aber wie gesagt all diese angaben scheitern daran, dass die browser sie nicht können.
grüße
thomas
ps: an stefan: ich weiss es nicht. ;-)