Hallo zusammen,
ich habe folgendes Stück HTML-Code:
In der fünften Zeile wird die CSS-Eigenschaft auf "text-decoration: underline;" gesetzt und auf Zeile 6 wieder auf "text-decoration: none;". Mein Problem ist, dass trotz Zeile 6 der nachfolgende Text immer noch unterstrichen ist (!important erzielte ebenfalls keinen Effekt). Die Begrenzung der Ursache konnte ich auf die folgenden Elemente reduzieren:
Die Underline bleibt nach wie vor bestehen. Kurz umrissen: Ich habe zwei Spans, die ineinander verschachtelt sind. Das äussere Span sagt "underline!", das innere sagt "kein underline mehr!". Trotzdem gibt es innerhalb des zweiten Spans den Underline noch. Kann mir jemand einen Wink in die richtige Richtung geben, um das Problem zu lösen?
Kurz noch zu dem eher ungewöhnlichen HTML-Aufbau. Hintergrund ist eine Möglichkeit in einer PHP-API, Text auf die folgende Weise ganz einfach einzufärben:
Die JavaScript-Funktion bekommt dann den folgenden String
und soll ihn auf Grundlage der §x-Tags formatieren (§u bedeutet unterstrichen, §z bedeutet Formatierung zurücksetzen, etc. etc.). Damit wird der oben erzeugte HTML-Code generiert. Klar könnte man bei der API auch gleich direkt HTML benutzen, aber dann besteht die Möglichkeit, dass invalider Code geschrieben wird. Bis auf das CSS-Problem funktioniert aber alles tiptop und es ist für den API-Anwender relativ einfach und leicht verständlich, weshalb ich das Konzept eigentlich nicht ändern möchte.
ich habe folgendes Stück HTML-Code:
PHP-Code:
<div id="divbox_34" style="background-color: rgb(255, 255, 255);"><
<span style="color: rgb(0, 0, 255);">
<span style="font-weight: bold;">
<span style="font-style: italic;">
<span style="text-decoration: underline;">[ADMIN] // [ADMIN] soll unterstrichen sein
<span style="font-weight: normal; font-style: normal; text-decoration: none;">phpascal // phpascal soll normal sein
<span style="font-weight: normal; font-style: normal; text-decoration: none;">
<span style="color: rgb(0, 0, 0);">> test</span>
</span>
</span>
</span>
</span>
</span>
</span>
</div>
PHP-Code:
<span style="text-decoration: underline;">[ADMIN]<span style="text-decoration: none;"> phpascal</span></span>
Kurz noch zu dem eher ungewöhnlichen HTML-Aufbau. Hintergrund ist eine Möglichkeit in einer PHP-API, Text auf die folgende Weise ganz einfach einzufärben:
PHP-Code:
return Color::UNDERLINE .'[ADMIN] '. Color::RESET .'phpascal';
Code:
§u[ADMIN] §zphpascal

Kommentar