2010-04-01 2 views
17

Ich habe zu zeigen, wieWie fügt man Klammern (a) zur geordneten Liste hinzu? kompatibel in allen Browsern

(a)

(b)

(c)

Update:

ich einen CSS Weg gefunden

ol {list-style-type: none;} 
li:before {content: "(" counter(section, lower-alpha) ") ";} 
li { counter-increment: section;} 

aber es funktioniert nicht in IE 7 und niedriger.

+4

warum downvote für das? –

+4

Das sind Klammern, keine Klammern. ;) –

+0

Gut, dass du es herausgefunden hast. Das Ändern der Frage nach der Tat ist jedoch nicht nett. Dies wird dem IE einige weitere Möglichkeiten geben, aber es enthält keinen "Counter": http://code.google.com/p/ie7-js/ Ich denke, Sie haben meistens kein Glück. – deceze

Antwort

0

These are your options nach W3C.

Mit CSS ist es nicht möglich. Sie müssten eine benutzerdefinierte Liste mit Javascript (oder ähnlich) erstellen.

8

Dies ist mit benutzerdefinierten Indikatoren möglich, aber zumindest IE7- unterstützt es nicht, einige andere auch nicht. Sehen Sie hier für weitere Details: http://www.quirksmode.org/css/counter.html

Ex:

li:before { 
    content: "(" counter(mycounter,lower-latin) ")"; 
} 
+0

aber ich brauche auf 'ol', weil es geordnete Liste ist –

+1

@jitendra Dann müssen Sie das CSS entsprechend ändern, das ist nur ein Beispiel. Ich bin nur auf der rechten Seite Richtung, müssen Sie es selbst codieren. – deceze

0

Es gibt keine eingebaute Möglichkeit, dies zu tun. Was bedeutet, dass du das Land der (lustigen) Hacks betrittst.

Sie könnten ein Hintergrundbild von zwei Klammern versuchen.

0

Ich habe stattdessen Absätze gemacht. Ich habe den Absatz eingerückt und dann die erste Zeile mit einem Texteinzug herausgezogen und diese selbst nummeriert.

.list_indent { 
margin-left:48px; 
} 
.list_indent p { 
text-indent:-26px; 
} 

<div class="list_indent"> 
<p> (1)&nbsp;&nbsp;The recruitment report and a copy of the blah and blah and blah and blah and blah and blah and blah and blah.; 
</p> 
<p> (2)&nbsp;&nbsp;A copy of the blah and blah and blah and blah and blah and blah and blah and blah. 
</p>  
<p> (3)&nbsp;&nbsp;Recruitment. 
</p> 
</div> 
0

Oder Sie können einfach den Text manuell Fallbacks, ohne yo Sorgen über Browser zählen hinzufügen. Funktioniert in jedem Browser!

ul.abc-list { 
 
    list-style: none; 
 
    padding-left: 30px; 
 
} 
 
ul.abc-list > li > span.counter { 
 
    position: absolute; 
 
    margin-left: -20px; 
 
    /*if you want to right align the text 
 
    * 
 
    * width: 15px; 
 
    * text-align: right; 
 
    */ 
 
}
<ul class="abc-list"> 
 
    <li><span class="counter">a)</span> One</li> 
 
    <li><span class="counter">b)</span> Two</li> 
 
    <li><span class="counter">c)</span> Three</li> 
 
    <li><span class="counter">d)</span> Four</li> 
 
    <li><span class="counter">e)</span> Five</li> 
 
    <ul>

3

Ich benutze diesen Code-Schnipsel in mediawiki mit CSS aktiviert. Ich bin mir nicht sicher, ob dies in älteren Versionen von IE funktioniert ...

{{#css: 
    .laparent ol { counter-reset: item } 
    .laparent li { display: block ; counter-increment: item; } 
    .laparent li:before { content: " ("counter(item,lower-alpha)") "; } 
}} 
<ol class=laparent> 
    <li> this is the first item; 
    <li> this is the second item; or 
    <li> this is the third item. 
</ol> 

Ausgänge:

(a) this is the first item; 
(b) this is the second item; or 
(c) this is the third item. 
+0

Sie sollten Ihre Antwort formatieren und beschreiben, was Sie tun. Es mag dir direkt erscheinen, aber du könntest dir ein paar erklärende Worte leisten. – ted

+1

Notiert, danke Ted. – Allan

Verwandte Themen