W3docs

CSS list-style-type Property

The CSS list-style-type property sets the marker of a list item — bullet, number, or letter. Learn its values, when to use them, and see examples.

The CSS list-style-type property sets the marker of a list item — the bullet, number, or letter shown before each item. It lets you switch an unordered list from the default solid bullet to a hollow circle or square, change an ordered list from 1, 2, 3 to Roman numerals or letters, or remove the marker entirely.

What this property covers

A list marker can be one of three kinds:

  • Glyphs — a simple shape: disc (the default filled bullet), circle (a hollow ring), or square.
  • Numbering systems — counters such as decimal, decimal-leading-zero, lower-roman, upper-roman, armenian, georgian, cjk-ideographic, hebrew, hiragana, and katakana.
  • Alphabetic systems — letter sequences such as lower-alpha/lower-latin (a, b, c) and upper-alpha/upper-latin (A, B, C), plus lower-greek (α, β, γ).

The marker's color matches the computed color of the element it applies to, so styling the text color also recolors the marker. You can pick a color from the HTML color reference.

When and where to use it

Only elements whose display value is list-item show a marker. By default that means the <li> and <summary> elements, but you can apply the behaviour to any element by setting display: list-item. In practice you set list-style-type on the parent <ul> or <ol> and let it inherit down to each <li> — the property inherits, so the children don't need it.

Use list-style-type: none when you want a clean navigation menu or a custom layout with no bullets. The numbering and alphabetic values work on both <ul> and <ol>, but they are most meaningful on <ol>, where each item represents a step or a ranked position.

list-style-type is one of three list properties that the shorthand list-style rolls up — the other two are list-style-position (marker inside or outside the content box) and list-style-image (a custom image marker, which overrides the type when set).

Initial Valuedisc
Applies toList items.
InheritedYes.
AnimatableNo.
VersionCSS1
DOM Syntaxobject.style.listStyleType = "armenian";

Syntax

Syntax of CSS list-style-type Property

list-style-type: disc | armenian | circle | cjk-ideographic | decimal | decimal-leading-zero | georgian | hebrew | hiragana | hiragana-iroha | katakana | katakana-iroha | lower-alpha | lower-greek | lower-latin | lower-roman | none | square | upper-alpha | upper-latin | upper-roman | initial | inherit;

Example of the list-style-type property:

Example of CSS list-style-type Property with square and hebrew values

<!DOCTYPE html>
<html>
  <head>
    <title>Title of the document</title>
    <style>
      ul.list-styles {
        list-style-type: square;
      }
      ul.list-styles2 {
        list-style-type: hebrew;
      }
    </style>
  </head>
  <body>
    <h2>List-style-type property example</h2>
    <ul class="list-styles">
      <li>Appetizers</li>
      <li>Main Course</li>
      <li>Salads</li>
    </ul>
    <ul class="list-styles2">
      <li>Cold Drinks</li>
      <li>Hot Drinks</li>
      <li>Ice-Creams</li>
    </ul>
  </body>
</html>

Result

A square-marked list and a Hebrew-numbered list rendered by the list-style-type property

Example of the list-style-type property with the "disc" value:

<!DOCTYPE html>
<html>
  <head>
    <title>Title of the document</title>
    <style>
      .text {
        list-style-type: disc;
      }
    </style>
  </head>
  <body>
    <h1> 
      Example of the list-style-type property with "disc" value.
    </h1>
    <ul class="text">
      <li>Barcelona</li>
      <li>Madrid</li>
      <li>London</li>
    </ul>
  </body>
</html>

Example of the list-style-type property with the "decimal" value:

<!DOCTYPE html>
<html>
  <head>
    <title>Title of the document</title>
    <style>
      .text {
        list-style-type: decimal;
      }
    </style>
  </head>
  <body>
    <h1> 
      Example of the list-style-type property 
    </h1>
    <ul class="text">
      <li>Barcelona</li>
      <li>Madrid</li>
      <li>London</li>
    </ul>
  </body>
</html>

Example of the list-style-type property with ordered lists:

Example of CSS list-style-type Property with circle,square,upper-roman,lower-alpha,armenian,decimal,cjk-ideographic,georgian, upper-alpha and other values

<!DOCTYPE html>
<html>
  <head>
    <title>Title of the document</title>
    <style>
      ul.a {
        list-style-type: circle;
      }
      ul.b {
        list-style-type: square;
      }
      ol.c {
        list-style-type: upper-roman;
      }
      ol.d {
        list-style-type: lower-alpha;
      }
      ol.e {
        list-style-type: armenian;
      }
      ol.f {
        list-style-type: decimal;
      }
      ol.g {
        list-style-type: cjk-ideographic;
      }
      ol.h {
        list-style-type: decimal-leading-zero;
      }
      ol.i {
        list-style-type: georgian;
      }
      ol.j {
        list-style-type: hebrew;
      }
      ol.k {
        list-style-type: hiragana;
      }
      ol.l {
        list-style-type: hiragana-iroha;
      }
      ol.m {
        list-style-type: katakana;
      }
      ol.n {
        list-style-type: katakana-iroha;
      }
      ol.o {
        list-style-type: lower-greek;
      }
      ol.p {
        list-style-type: lower-latin;
      }
      ol.q {
        list-style-type: lower-roman;
      }
      ol.r {
        list-style-type: none;
      }
      ol.s {
        list-style-type: upper-alpha;
      }
      ol.t {
        list-style-type: upper-latin;
      }
    </style>
  </head>
  <body>
    <h2>List-style-type property example</h2>
    <p>Examples of unordered lists:</p>
    <h3>Circle</h3>
    <ul class="a">
      <li>New York</li>
      <li>Las Vegas</li>
      <li>Washington</li>
    </ul>
    <h3>Square</h3>
    <ul class="b">
      <li>San Francisco</li>
      <li>Los Angeles</li>
      <li>Miami</li>
    </ul>
    <p>Examples of ordered lists:</p>
    <h3>Upper-roman</h3>
    <ol class="c">
      <li>Barcelona</li>
      <li>Madrid</li>
      <li>London</li>
    </ol>
    <h3>Lower-alpha</h3>
    <ol class="d">
      <li>Dubai</li>
      <li>Anu Dhabi</li>
      <li>Qatar</li>
    </ol>
    <h3>Armenian</h3>
    <ol class="e">
      <li>Yerevan</li>
      <li>Paris</li>
      <li>Rome</li>
    </ol>
    <h3>Decimal</h3>
    <ol class="f">
      <li>Sydney</li>
      <li>Honk Kong</li>
      <li>Moscow</li>
    </ol>
    <h3>Cjk-ideographic</h3>
    <ol class="g">
      <li>Kiev</li>
      <li>Saint-Petersburg</li>
      <li>Tula</li>
    </ol>
    <h3>Decimal-leading-zero</h3>
    <ol class="h">
      <li>Bangkok</li>
      <li>Gyumri</li>
      <li>Valencia</li>
    </ol>
    <h3>Georgian</h3>
    <ol class="i">
      <li>Madrid</li>
      <li>Barcelona</li>
      <li>Prague</li>
    </ol>
    <h3>Hebrew</h3>
    <ol class="j">
      <li>Jerusalem</li>
      <li>Toronto</li>
      <li>Prague</li>
    </ol>
    <h3>Hiragana</h3>
    <ol class="k">
      <li>Cairo</li>
      <li>Tokyo</li>
      <li>Athens</li>
    </ol>
    <h3>Hiragana-iroha</h3>
    <ol class="l">
      <li>Tehran</li>
      <li>Tavriz</li>
      <li>Tel Aviv</li>
    </ol>
    <h3>Katakana</h3>
    <ol class="m">
      <li>Munich</li>
      <li>Berlin</li>
      <li>Bavaria</li>
    </ol>
    <h3>Katakana-iroha</h3>
    <ol class="n">
      <li>Brussels</li>
      <li>Istanbul</li>
      <li>Sydney</li>
    </ol>
    <h3>Lower-greek</h3>
    <ol class="o">
      <li>Seville</li>
      <li>Granada</li>
      <li>Venice</li>
    </ol>
    <h3>Lower-latin</h3>
    <ol class="p">
      <li>Budapest</li>
      <li>Vienna</li>
      <li>Amsterdam</li>
    </ol>
    <h3>Lower-roman</h3>
    <ol class="q">
      <li>Buenos Aires</li>
      <li>Rio de Janeiro</li>
      <li>San Paolo</li>
    </ol>
    <h3>None</h3>
    <ol class="r">
      <li>Vilnius</li>
      <li>Tallin</li>
      <li>Riga</li>
    </ol>
    <h3>Upper-alpha</h3>
    <ol class="s">
      <li>Montreal</li>
      <li>Melbourne</li>
      <li>Edinburgh</li>
    </ol>
    <h3>Upper-latin</h3>
    <ol class="t">
      <li>Dublin</li>
      <li>Mexico</li>
      <li>Florence</li>
    </ol>
  </body>
</html>

Things to keep in mind

  • The marker color follows the text color. There is no separate property for the bullet's color; set the color of the <li> (or its parent) and the marker changes with it. To color the marker independently, use the ::marker pseudo-element.
  • list-style-image wins over list-style-type. If a list also has a list-style-image, the image is shown and the type only acts as a fallback when the image fails to load.
  • Removing the marker doesn't remove the indent. list-style-type: none hides the bullet, but the list still has default left padding from the browser. Add padding-left: 0 (and often margin: 0) to fully flatten a list — a common step when building navigation menus.
  • Use the right list element for ordered values. Numbering and letter values render on <ul> too, but for accessibility and semantics, ranked or sequential content belongs in an <ol>.

Values

ValueDescriptionPlay it
discCreates marker as a filled circle. It is the default value of this property.Play it »
armenianCreates marker as a traditional Armenian numbering.Play it »
circleCreates marker as a circle.Play it »
cjk-ideographicCreates marker which is a plain ideographic numbers.Play it »
decimalCreates marker as a number.Play it »
decimal-leading-zeroCreates marker as a number with leading zero such as 01,02,05...Play it »
georgianCreates marker as a traditional Georgian numbering.Play it »
hebrewCreates marker as a traditional Hebrew numbering.Play it »
hiraganaCreates marker as a traditional Hiragana numbering.Play it »
hiragana-irohaCreates marker as a traditional Hiragana iroha numbering.Play it »
katakanaCreates marker as a traditional Katakana numbering.Play it »
katakana-irohaCreates marker as a traditional Katakana iroha numbering.Play it »
lower-alphaCreates marker as lower-alpha such as a,b,c,d...Play it »
lower-greekCreates marker as lower-greek.Play it »
lower-latinCreates marker as lower-latin such as a,b,c,d...Play it »
lower-romanCreates marker as lower-roman such as i,ii,iii,iv...Play it »
noneMeans that the marker won't be shown.Play it »
squareCreates marker as a square.Play it »
upper-alphaCreates marker as upper-alpha such as A,B,C,D...Play it »
upper-latinCreates marker as upper-latin such as A,B,C,D...Play it »
upper-romanCreates marker as upper-roman such as I,II,III,IV,V...Play it »
initialMakes the property use its default value.Play it »
inheritInherits the property from its parents element.

Practice

Practice
What does the list-style-type property in CSS specify?
What does the list-style-type property in CSS specify?
Was this page helpful?