Wie kann ich die Nummern in einer geordneten Liste linksbündig ausrichten?
1. an item
// skip some items for brevity
9. another item
10. notice the 1 is under the 9, and the item contents also line up
Das Zeichen nach der Nummer in einer geordneten Liste ändern?
1) an item
Es gibt auch eine CSS-Lösung, mit der Sie von Zahlen zu alphabetischen / römischen Listen wechseln können, anstatt das type-Attribut für das ol-Element zu verwenden.
Ich interessiere mich hauptsächlich für Antworten, die auf Firefox 3 funktionieren.
ol {counter-reset: item; padding-left: 0;} li {display: block; margin-bottom: .5em;} li:before {display: inline-block; content: counter(item) ") "; counter-increment: item; padding-right: 0.8em;}
.Das CSS für Styling-Listen ist hier , aber im Grunde ist:
Allerdings Layout der spezifische sind Sie nach kann wohl nur durch Eintauchen in die Innereien des Layouts mit so etwas wie erreicht werden diese (beachten Sie, dass ich habe nicht wirklich versucht):
quelle
Sie können auch Ihre eigenen Nummern im HTML angeben - z. B. wenn die Nummern von einer Datenbank bereitgestellt werden:
Das
seq
Attribut wird mit einer ähnlichen Methode wie in anderen Antworten sichtbar gemacht. Aber anstatt zu verwendencontent: counter(foo)
, verwenden wircontent: attr(seq)
.Demo in CodePen mit mehr Styling
quelle
value
Attribut für verwenden<li>
. zB<li value="20">
. Dann brauchen Sie keine Pseudoelemente. Demovalue="4A"
, da es nicht funktioniert. Darüber hinaus kann das Wertattribut mit demtype
Attribut arbeiten, der Wert muss jedoch weiterhin eine Zahl sein (da er innerhalb einer geordneten Menge funktioniert).reversed
anzuzeigen ( Attribut ist nur HTML5, ebenso wie dasvalue
vonli
). Anstatt deine zu benutzen, habeseq
ich eine gesetztvalue
undattr(value)
stattattr(seq)
Ich habe viel davon aus anderen Antworten gestohlen, aber das funktioniert in FF3 für mich. Es hat eine
upper-roman
gleichmäßige Einrückung und eine enge Klammer.quelle
Ich schlage vor, mit dem Attribut: before zu spielen und zu sehen, was Sie damit erreichen können. Dies bedeutet, dass Ihr Code wirklich auf nette neue Browser beschränkt ist und den (ärgerlich großen) Teil des Marktes ausschließt, in dem immer noch alte Browser verwendet werden.
So etwas wie das Folgende, das eine Fixierung auf die Gegenstände erzwingt. Ja, ich weiß, dass es weniger elegant ist, die Breite selbst wählen zu müssen, aber die Verwendung von CSS für Ihr Layout ist wie verdeckte Polizeiarbeit: So gut Ihre Motive auch sein mögen, es wird immer chaotisch.
Aber Sie müssen experimentieren, um die genaue Lösung zu finden.
quelle
Die Zahlen in einer Reihe aufstellen besser , wenn Sie führende Nullen-den Zahlen hinzufügen, indem Sie list-style-type zu:
quelle
HTML5: Verwenden Sie das
value
Attribut (kein CSS erforderlich)Moderne Browser interpretieren das
value
Attribut und zeigen es wie erwartet an. Siehe MDN-Dokumentation .Schauen Sie sich auch den
<ol>
Artikel über MDN an , insbesondere die Dokumentation für dasstart
Attribut und.quelle
Geliehen und verbessert Marcus Downings Antwort . Getestet und funktioniert in Firefox 3 und Opera 9. Unterstützt auch mehrere Zeilen.
quelle
Es gibt das Type-Attribut , mit dem Sie den Nummerierungsstil ändern können. Sie können jedoch den Punkt nach der Zahl / dem Buchstaben nicht ändern.
quelle
Die Dokumente sagen in Bezug auf
list-style-position
: outside
Weiter oben auf dieser Seite geht es um Marker.
Ein Beispiel ist:
quelle
Nein ... benutze einfach einen DL:
quelle
Ich habe es. Versuche Folgendes:
Der Haken ist, dass dies auf älteren oder weniger kompatiblen Browsern definitiv nicht funktioniert:
display: inline-block
ist eine sehr neue Eigenschaft.quelle
Schnelle und schmutzige alternative Lösung. Sie können ein Tabellierungszeichen zusammen mit vorformatiertem Text verwenden. Hier ist eine Möglichkeit:
und dein HTML:
Beachten Sie, dass der Abstand zwischen dem
li
Tag und dem Anfang des Textes ein Tabellierungszeichen ist (was Sie erhalten, wenn Sie die Tabulatortaste im Editor drücken).Wenn Sie ältere Browser unterstützen müssen, können Sie dies folgendermaßen tun:
quelle
Die anderen Antworten sind konzeptionell besser. Sie können die Zahlen jedoch einfach mit der entsprechenden Nummer '& ensp;' um sie in eine Reihe zu bringen.
* Hinweis: Ich habe zunächst nicht erkannt, dass eine nummerierte Liste verwendet wird. Ich dachte, die Liste würde explizit generiert.
quelle
Ich werde hier die Art von Antwort geben, die ich normalerweise nicht gerne lese, aber ich denke, da es andere Antworten gibt, die Ihnen sagen, wie Sie erreichen können, was Sie wollen, könnte es schön sein, zu überdenken, ob das, was Sie erreichen möchten, wirklich ist eine gute Idee.
Zunächst sollten Sie sich überlegen, ob es eine gute Idee ist, die Elemente auf eine nicht standardmäßige Weise mit einem anderen als dem bereitgestellten Trennzeichen anzuzeigen.
Ich kenne die Gründe dafür nicht, aber nehmen wir an, Sie haben gute Gründe.
Die hier vorgeschlagenen Methoden zum Erreichen, die darin bestehen, Ihrem Markup Inhalte hinzuzufügen, hauptsächlich über das CSS: vor der Pseudoklasse. Dieser Inhalt verändert Ihre DOM-Struktur wirklich und fügt diese Elemente hinzu.
Wenn Sie die Standardnummerierung "ol" verwenden, erhalten Sie einen gerenderten Inhalt, in dem der Text "li" auswählbar ist, die vorangestellte Nummer jedoch nicht auswählbar ist. Das heißt, das Standard-Nummerierungssystem scheint mehr "Dekoration" als realer Inhalt zu sein. Wenn Sie Inhalte für Zahlen hinzufügen, indem Sie beispielsweise diese ": before" -Methoden verwenden, kann dieser Inhalt ausgewählt und entsprechend ausgeführt werden, wodurch unerwünschte Probleme beim Kopieren / Einfügen oder Zugänglichkeitsprobleme mit Bildschirmleseprogrammen auftreten, die diesen "neuen" Inhalt zusätzlich lesen zum Standard-Nummerierungssystem.
Möglicherweise könnte ein anderer Ansatz darin bestehen, die Zahlen mit Bildern zu formatieren, obwohl diese Alternative ihre eigenen Probleme mit sich bringt (Zahlen werden nicht angezeigt, wenn Bilder deaktiviert sind, Textgröße für Zahlen ändert sich nicht, ...).
Der Grund für diese Antwort ist jedenfalls nicht nur, diese "Bilder" -Alternative vorzuschlagen, sondern die Leute dazu zu bringen, über die Konsequenzen nachzudenken, die sich aus dem Versuch ergeben, das Standard-Nummerierungssystem für geordnete Listen zu ändern.
quelle
Dieser Code macht den Nummerierungsstil mit den Headern von li-Inhalten identisch.
quelle