WebToolsPlanet
Developer Tools

HTML Underlined Text Generator

Generate a <u> element for unarticulated non-textual annotation — proper noun marking, spelling indication — and copy the HTML with live preview.

Last updated: May 21, 2026

Client-Side Processing
Input Data Stays on Device
Instant Local Execution

Find this tool useful? Support the project to keep it free!

Buy me a coffee

What is HTML Underlined Text Generator?

The HTML `<u>` element marks text as having a non-textual annotation — what the HTML spec calls "unarticulated annotation." This is not the same as simple visual underlining for emphasis. The spec gives two specific use cases: marking proper names in Chinese text (where underline is a conventional annotation), and indicating a spelling error with a visual cue.

Avoid using `<u>` simply to make text look like a link — users will be confused. For purely visual underlining without semantic meaning, use CSS `text-decoration: underline` instead. For stress emphasis use `<em>`; for importance use `<strong>`.

How to Use HTML Underlined Text Generator

1

Enter the text to annotate with an underline

2

Add a lang attribute if annotating text in a specific language (e.g. "zh" for Chinese)

3

Optionally add id, class, or title attributes

4

Copy the generated HTML

Common Use Cases

  • Authors marking Chinese proper nouns with the conventional underline annotation.
  • Developers programmatically indicating inline spell-check errors.
  • Content editors marking unarticulated annotations in multilingual documents.

Example Input and Output

An underlined annotation on a Chinese proper noun.

Configuration
Text: 北京
Lang: zh
HTML output
<u lang="zh">北京</u>

Privacy

All HTML generation runs in your browser. No data is sent to any server.

Frequently Asked Questions

Can I use <u> just to underline text for decoration?
Technically yes, but it is discouraged. Underlined text looks like a hyperlink and confuses users. For purely decorative underlines, use CSS: span { text-decoration: underline; }. Reserve <u> for genuine unarticulated annotation.
What is the difference between <u> and <ins>?
<u> marks unarticulated annotation (e.g., a proper noun or spelling error marker). <ins> marks text that has been inserted as part of a document edit — the underline appearance is a browser default for <ins> but the semantics are editorial, not annotative.