Summary
The HTML unordered list element (<ul>
) represents an unordered list of items, namely a collection of items that do not have a numerical ordering, and their order in the list is meaningless. Typically, unordered-list items are displayed with a bullet, which can be of several forms, like a dot, a circle or a squared. The bullet style is not defined in the HTML description of the page, but in its associated CSS, using the {{ cssxref("list-style-type") }} property.
There is no limitation to the depth and imbrication of lists defined with the {{ HTMLElement("ol") }} and {{ HTMLElement("ul") }} elements.
Usage context
Content categories | Flow content |
Permitted content | zero or more {{ HTMLElement("li") }} elements, eventually mixed with {{ HTMLElement("ol") }} and {{ HTMLElement("ul") }} elements. |
Tag omission | none, both the start tag and the end tag are mandatory |
Permitted parent elements | any element that accept flowing content |
Normative document | HTML5, section 4.5.6 (HTML4.01, section 10.2) |
Elementy type | Block |
Attributes
This element includes the global attributes.
- {{ htmlattrdef("compact") }}{{ Deprecated_inline() }}
- This Boolean attribute hints that the list should be rendered in a compact style. The interpretation of this attribute depends on the user agent and it doesn't work in all browsers.
Usage note: Do not use this attribute, as it has been deprecated: the {{ HTMLElement("ul") }} element should be styled using CSS. To give a similar effect as the compact attribute, the CSS property line-height can be used with a value of 80%.
- {{ htmlattrdef("type") }}{{ Deprecated_inline() }}
- Used to set the bullet style for the list. The values defined under HTML3.2 and the transitional version of HTML 4.0/4.01 are:
circle
,disc
,- and
square
.
A fourth bullet type has been defined in the WebTV interface, but not all browsers support it:
triangle.
If not present and if no CSS {{ cssxref("list-style-type") }} property does apply to the element, the user agent decide to use a kind of bullets depending on the nesting level of the list.
Usage note: Do not use this attribute, as it has been deprecated; use the CSS {{ cssxref("list-style-type") }} property instead.
DOM interface
This element implements the {{domxref("HTMLUListElement")}} interface.
Examples
Simple example
<ul> <li>first item</li> <li>second item</li> <li>third item</li> </ul>
Above HTML will output:
- first item
- second item
- third item
Nesting list
<ul> <li>first item</li> <li>second item <!-- Look, the closing </li> tag is not placed here! --> <ul> <li>second item first subitem</li> <li>second item second subitem <!-- Same for the second nested unordered list! --> <ul> <li>second item second subitem first sub-subitem</li> <li>second item second subitem second sub-subitem</li> <li>second item second subitem third sub-subitem</li> </ul> </li> <!-- Closing </li> tag for the li that contains the third unordered list --> <li>second item third subitem</li> </ul> </li> <!-- Here is the closing </li> tag --> <li>third item</li> </ul>
Above HTML will output:
- first item
- second item
- second item first subitem
- second item second subitem
- second item second subitem first sub-subitem
- second item second subitem second sub-subitem
- second item second subitem third sub-subitem
- second item third subitem
- third item
Nested <ul> and <ol>
<ul> <li>first item</li> <li>second item <!-- Look, the closing </li> tag is not placed here! --> <ol> <li>second item first subitem</li> <li>second item second subitem</li> <li>second item third subitem</li> </ol> </li> <!-- Here is the closing </li> tag --> <li>third item</li> </ul>
Above HTML will output:
- first item
- second item
- second item first subitem
- second item second subitem
- second item third subitem
- third item
See also
- Other list-related HTML Elements: {{ HTMLElement("ol") }}, {{ HTMLElement("li") }}, {{ HTMLElement("menu") }} and the obsolete {{ HTMLElement("dir") }};
- CSS properties that may be specially useful to style the <ul> element:
- the list-style property, useful to choose the way the ordinal is displayed,
- CSS counters, useful to handle complex nested lists,
- the line-height property, useful to simulate the deprecated {{ htmlattrxref("compact", "ul") }} attribute,
- the margin property, useful to control the indent of the list.
{{ languages({ "en":"en/HTML/Element/ul", "de":"de/HTML/Element/ul", "ja":"ja/HTML/Element/ul", "pl":"pl/HTML/Element/ul"}) }}
{{ HTMLRef }}