Hat jemand einen Vorschlag zum Erstellen von Zeilenbereichen vom Typ "Absatz" in einem <li>
-Tag, der eine Popup-Pseudoklasse enthält, die sich im Schwebezustand befindet?
Ich habe ein <span>
, das auf a:hover
erscheint, und ich möchte, dass der auftauchende Text in zwei Absätze aufgeteilt wird. Es funktioniert mit <br>
in FF, aber ich möchte das Richtige tun (jetzt, da ich entdeckt habe, dass es falsch ist!) ...
html:
%Vor%css:
%Vor%Ihr Problem kann dadurch entstehen, dass Sie ein & lt; span & gt; falsch taggen.
Spans sollten Inline-Elemente sein, und Sie gestalten es so, als wäre es ein Blockelement. Zugegebenermaßen können Sie eine Spanne zwingen, sich als Blockelement zu verhalten, indem Sie den richtigen Stil hinzufügen, aber dies wird von den verschiedenen Browsern nicht immer eingehalten.
Idealerweise sollten Sie stattdessen ein div verwenden. Sie können dann entweder p-Tags oder weitere div-Tags verwenden, um die Absätze anzugeben (im Idealfall p, da sie semantisch eigentlich Absätze sind und keine unzusammenhängenden Textblöcke).
Err es ist nichts falsch daran, <br>
in% <a>
oder <span>
zu haben. Es ist nach HTML 4.01-Spezifikation absolut gültig.
Bearbeiten: <li>
kann <p>
, <br>
und so ziemlich alles andere enthalten.
Die Spezifikation ist ein bisschen schwer zu lesen, aber sagt im Grunde:
LI
kann block
oder inline
enthalten
block
besteht aus P
+ einigen anderen Dingen inline
besteht aus special
+ einigen anderen Dingen special
besteht aus A
+ BR
+ einige andere Dinge Bezüglich <a>
heißt es:
A
kann inline
außer A
enthalten
inline
... siehe oben Du könntest einen anderen Bereich als "falsches" p-Tag einfügen:
%Vor%Und in deinem css:
%Vor% Hinweis Alles, was Sie für #rightlist span
deklarieren, wird auf #rightlist span span
angewendet, sodass Sie möglicherweise einige der Regeln in #rightlist span span
überschreiben müssen.
Tags und Links list pseudo-class popup hover line-breaks