2013-02-05 5 views
7

So habe ichAusrichtungs list-style-Bild proportional mit Text

<ul> 
    <li>Hello</li> 
</ul> 

und

li { 
    list-style-image: url(../img/bullet.png); /* 13x13 px */ 
    /* line-height: 13px; */ 
    /* vertical-align: middle; */ 
    padding-left: 5px; 
} 

die

enter image description here

wie

aussieht, wie Sie Text und Bildelement sehen von <li> sind nicht vertikal ausgerichtet (Bild ist höher als Text), Ich habe versucht, Zeilenhöhe und vertikale Ausrichtung darauf anzuwenden (Code auskommentiert), aber es hat es nicht ausgemacht. Gibt es eine Möglichkeit, eine gute Ausrichtung zu erreichen?

Antwort

15

Die Auffüllung wirkt sich nur auf das aus, was sich innerhalb des Elements befindet - in Ihrem Fall der Text.

Die einzige verfügbare Positionseinstellungseigenschaft ist list-style-position, aber die einzigen zulässigen Werte sind inherit, inside oder outside. Die am weitesten verbreitete Praxis ist zu verwenden:

list-style: none; 

und dann das gewünschte Bild anwenden, wie die <li> ‚s Hintergrund

li { 
    /** the image will be vertically aligned in the center **/ 
    background: url(../img/bullet.png) left center no-repeat; 

    /** move the text to the right **/ 
    padding-left: 20px; 
} 
+1

Vergessen Sie nicht, Ihre Hintergrundeigenschaft zu wiederholen. – ctorx

0

Wenn Sie nur eine Zeile pro Listenelement haben Sie

+1

es versucht, half nicht;/ – Ilja

1

Mai einen img-Tag oder einen Hintergrund definieren einig padding-bottom zum li Elemente hinzufügen: url (..) für den li-Tag statt dem " list-style-image "

+0

Ja, aber ich möchte ein bisschen zu Finde es mit list-style-image heraus. – Ilja

0

ich auch auf den Hintergrund Eigenschaft hinzufügen‚no-repeat‘benötigt

0

können Sie haben

<li><span style="top:-5px; position:relative;">Text shifted 5px upper</span></li> 
Verwandte Themen