Problem mit Gewichtung

Hi

Ich habe folgendes Problem:
Ich habe ein allgemeines Stylesheet für alle Seiten, dass in jede Seite einbezogen wird.
Ich will aber auch noch ein paar Eigenschaften für die jeweilige Seite definieren. bei einer Eigenschaft will das aber einfach nicht funktionieren.

Teil der allg. CSS:
[HTML]ul#submenu {
clear: both;
list-style-type: none;
border: #BCBCBC solid 0px;
margin: 0 0 2em 75px;
padding: 0 0 0 0;
height: 1.5em;

}

ul#submenu li{
display: inline;
}

ul#submenu li a
{
float: left;
margin: 0 2em 0 0;
font-size: 1.3em;
text-decoration: none;
color: #444444;
}

ul#submenu li a:hover
{
text-decoration: underline;
color: #999999;
}[/HTML]In der jeweilige HTML soll dann noch folgendes:
[HTML]

ul#submenu li a[id=sm1] { text-decoration: underline overline; }; [/HTML]Das soll bewirken, dass der Link mit der id sm1 unterstrichen und überstrichen wird. (letztendlich wird dann die 1 durch eine php-variable ersetzt.)

Ich habe schon alle möglichen spezifischen und unspezifischen schriebweisen probiert. aber es passiert nichts.
Wenn ich den gleichen Code jedoch direkt in die allgemeine css einfüge, dann funktioniert es.
Ich schätze das hat etwas mit der Gewichtung der definitionen zu tun. aber ich habe keine Ahnung, wie ich das löse.

Jemand einen Tipp?

So direkt aus der Hüfte geschossen würde ich sagen, versuch es mal mit

text-decoration: underline overline !important;

Ist das Absicht, dass Du eine Schreibweise wählst, die ältere IEs nicht verstehen?

Warum nicht „ul#submenu li a#sm1“?

Was die Gewichtung angeht…zuerst sollte das Stylesheet kommen, dann die style-Definition im header und die beide werden überschriben von Inline-Styles.

Gibts nen Link zur Seite?

Welche Schreibweise ist das denn?
Die mit den eckigen Klammern? Das mochte ich eigentlich auch nicht aber so hat es wenigstens in der externen css funktioniert.

!important hilft leider nicht.
Auch nicht die Schreibweise von Efchen.

Also ich habe zuerst die externe eingebunden und dann den Style für die Seite eingefügt. So richtig?

Hier ein Link. In dieser Testversion sollte eigentlich Start unterstrichen und überstrichen sein. Ist es aber nicht.

Link !

Sorry, gerade noch obendrüber eingefügt.

Mit Firebug sieht man sofort, dass kein Selektor für „ul#submenu li a#sm1“ vorliegt.
Und die Fehlerkonsole sagt Dir dann, wo genau der Fehler liegt.

Nicht böse sein, aber das sind so die Basics, die ersten Schritte, die man macht, wenn irgendwas nicht passt. Du musst Dir angewöhnen, die Fehlerkonsole zu benutzen, nicht nur für JavaScript, sondern auch für CSS, dazu brauchst Du ein Debuggin-Tool, wie z.B. Firebug, und Du musst Deinen Code, sowohl HTML als auch CSS, immer validieren, denn nur fehlerfreier Code kann funktionieren, wie Du hier siehst.

OMFG!!!

Ich könnt mir so in den Arsch treten…

Das kommt davon, wenn man php und css gleichzeitig bearbeitet. Dann macht man auf einmal auch hinter jeder css anweisung ein ‚;‘

Nun gut… jetzt isses ja gelöst.

Danke

Kein Problem.

Ohne Link hätte Dir niemand die Lösung zeigen können, also immer einen Link mit angeben :slight_smile: