The list-style property is a shorthand property that sets values for three different list-related properties in one declaration:
ul {
list-style: || || ;
}
Here’s an example of the syntax:
ul {
list-style: square outside none;
}
Which would be the same as the following longhand version:
ul {
list-style-type: square;
list-style-position: outside;
list-style-image: none;
}
In the shorthand, if any values are omitted, they will revert to their initial state.
Values for list-style-type
The list-style-type property defines the type of list by setting the content of each marker, or bullet, on the list. Acceptable keyword values for list-style-type include:
disccirclesquaredecimaldecimal-leading-zerolower-romanupper-romanlower-greeklower-latinupper-latinarmeniangeorgianlower-alphaupper-alphanone
Non-keyword values are introduced in CSS3, but there is little, if any, browser support for them.
The following demo includes a group of unordered lists to demonstrate each keyword value:
<ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul> <ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul> <ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul> <ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul> <ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul> <ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul> <ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul> <ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul> <ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul> <ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul> <ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul> <ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul> <ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul> <ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul> <ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul>
ul:nth-of-type(1) {
list-style-type: disc;
}
ul:nth-of-type(2) {
list-style-type: circle;
}
ul:nth-of-type(3) {
list-style-type: square;
}
ul:nth-of-type(4) {
list-style-type: decimal;
}
ul:nth-of-type(5) {
list-style-type: decimal-leading-zero;
}
ul:nth-of-type(6) {
list-style-type: lower-roman;
}
ul:nth-of-type(7) {
list-style-type: upper-roman;
}
ul:nth-of-type(8) {
list-style-type: lower-greek;
}
ul:nth-of-type(9) {
list-style-type: lower-latin;
}
ul:nth-of-type(10) {
list-style-type: upper-latin;
}
ul:nth-of-type(11) {
list-style-type: armenian;
}
ul:nth-of-type(12) {
list-style-type: georgian;
}
ul:nth-of-type(13) {
list-style-type: lower-alpha;
}
ul:nth-of-type(14) {
list-style-type: upper-alpha;
}
ul:nth-of-type(15) {
list-style-type: none;
}
The list-style-type property applies to all lists, and to any element that is set to display: list-item.
The color of the list marker will be whatever the computed color of the element is (set via thecolor property).
Values for list-style-position
The list-style-position property defines where to position the list marker, and it accepts one of two values: “inside” or “outside”. These are demonstrated below with padding removed from the lists and a left red border added:
<ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul> <ul> <li>Item</li> <li>Item</li> <li>Item</li> </ul>
body {
padding-left: 50px;
}
ul:nth-of-type(1) {
list-style-position: inside;
padding: 0;
border-left: solid 2px red;
}
ul:nth-of-type(2) {
list-style-position: outside;
padding: 0;
border-left: solid 2px red;
}
Values for list-style-image
The list-style-image property determines whether the list marker is set with an image, and accepts a value of “none” or a URL that points to the image:
ul {
list-style-image: url(images/bullet.png);
}
More Demo
<div id="page-wrapper">
<h1>HTML List Demos</h1>
<h2>Ordered Lists</h2>
<code><pre>
<ol>
<li>Google Chrome</li>
<li>Internet Explorer</li>
<li>Mozilla Firefox</li>
<li>Safari</li>
<li>Opera</li>
</ol>
</pre></code>
<ol>
<li>Google Chrome</li>
<li>Internet Explorer</li>
<li>Mozilla Firefox</li>
<li>Safari</li>
<li>Opera</li>
</ol>
<h3>The <code>start</code> Attribute</h3>
<code><pre>
<ol <strong>start="3"</strong>>
<li>Google Chrome</li>
<li>Internet Explorer</li>
<li>Mozilla Firefox</li>
<li>Safari</li>
<li>Opera</li>
</ol>
</pre></code>
<ol start="3">
<li>Google Chrome</li>
<li>Internet Explorer</li>
<li>Mozilla Firefox</li>
<li>Safari</li>
<li>Opera</li>
</ol>
<h3>The <code>reversed</code> Attribute</h3>
<code><pre>
<ol <strong>reversed</strong>>
<li>Google Chrome</li>
<li>Internet Explorer</li>
<li>Mozilla Firefox</li>
<li>Safari</li>
<li>Opera</li>
</ol>
</pre></code>
<ol reversed>
<li>Google Chrome</li>
<li>Internet Explorer</li>
<li>Mozilla Firefox</li>
<li>Safari</li>
<li>Opera</li>
</ol>
<h2>Unordered Lists</h2>
<code><pre>
<ul>
<li>Rucksack</li>
<li>Compass</li>
<li>Map</li>
<li>Water Bottle</li>
<li>Jacket</li>
</ul>
</pre></code>
<ul>
<li>Rucksack</li>
<li>Compass</li>
<li>Map</li>
<li>Water Bottle</li>
<li>Jacket</li>
</ul>
<h2>Description Lists</h2>
<dl>
<dt>Author</dt>
<dd>Matt West</dd>
<dt>Editors</dt>
<dd>Sara Shlaer</dd>
<dd>Ellie Scott</dd>
<dd>Debbye Butler</dd>
<dd>Nick Elliott</dd>
</dl>
<h2>Styling Lists</h2>
<h3><code>list-style-type</code></h3>
<h4><code>disc</code></h4>
<ul id="disc">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ul>
<h4><code>circle</code></h4>
<ul id="circle">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ul>
<h4><code>square</code></h4>
<ul id="square">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ul>
<h4><code>decimal</code></h4>
<ol id="decimal">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ol>
<h4><code>decimal-leading-zero</code></h4>
<ol id="decimal-leading-zero">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ol>
<h4><code>lower-roman</code></h4>
<ol id="lower-roman">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ol>
<h4><code>upper-roman</code></h4>
<ol id="upper-roman">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ol>
<h4><code>lower-greek</code></h4>
<ol id="lower-greek">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ol>
<h4><code>lower-latin</code></h4>
<ol id="lower-latin">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ol>
<h4><code>upper-latin</code></h4>
<ol id="upper-latin">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ol>
<h4><code>armenian</code></h4>
<ol id="armenian">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ol>
<h4><code>georgian</code></h4>
<ol id="georgian">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ol>
<h4><code>lower-alpha</code></h4>
<ol id="lower-alpha">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ol>
<h4><code>upper-alpha</code></h4>
<ol id="upper-alpha">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ol>
<h4><code>none</code></h4>
<ol id="none">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ol>
<h3><code>list-style-position</code></h3>
<h4><code>outside</code></h4>
<ol id="outside">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ol>
<h4><code>inside</code></h4>
<ol id="inside">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ol>
<h3><code>list-style-image</code></h3>
<ul id="image">
<li>Item One</li>
<li>Item Two</li>
<li>Item Three</li>
</ul>
</div>
*, *:before, *:after {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
html {
font-family: Helvetica, Arial, sans-serif;
font-size: 100%;
background: #333;
-webkit-font-smoothing: antialiased;
}
#page-wrapper {
width: 640px;
background: #FFFFFF;
padding: 1em;
margin: 1em auto;
border-top: 5px solid #69c773;
box-shadow: 0 2px 10px rgba(0,0,0,0.8);
}
h1 {
margin-top: 0;
}
pre {
background: #EEE;
padding-top: 1em;
border-left: 5px solid #69c773;
}
#disc {
list-style-type: disc;
}
#circle {
list-style-type: circle;
}
#square {
list-style-type: square;
}
#decimal {
list-style-type: decimal;
}
#decimal-leading-zero {
list-style-type: decimal-leading-zero;
}
#lower-roman {
list-style-type: lower-roman;
}
#upper-roman {
list-style-type: upper-roman;
}
#lower-greek {
list-style-type: lower-greek;
}
#lower-latin {
list-style-type: lower-latin;
}
#upper-latin {
list-style-type: upper-latin;
}
#armenian {
list-style-type: armenian;
}
#georgian {
list-style-type: georgian;
}
#lower-alpha {
list-style-type: lower-alpha;
}
#upper-alpha {
list-style-type: upper-alpha;
}
#none {
list-style-type: none;
}
#outside {
list-style-position: outside;
}
#inside {
list-style-position: inside;
}
#image {
line-height: 1.5em;
list-style-image: url(marker.png);
}
Related Properties
Browser Support
| Chrome | Safari | Firefox | Opera | IE | Android | iOS |
|---|---|---|---|---|---|---|
| Works | Works | Works | Works | Works | Works | Works |
IE6/7 don’t support all the keyword values for list-style-type and also have a bug where floated list items do not display their list marker. This is resolved by using a background image (instead of list-style-image) on the list items.

Share
Tweet
Email
Leave a Reply