HTML <rb> Tag

Beginner
⏱️ 5 min read
📚 Updated: Jun 2026
🎯 3 Examples
Deprecated HTML

What You’ll Learn

The <rb> tag once marked the base text in ruby annotations for East Asian typography. This guide explains its historical role, deprecated status, and the modern ruby, rt, and rp elements beginners should use instead.

01

Ruby Base

Historical role.

02

Deprecated

Not in HTML5.

03

ruby Element

Modern wrapper.

04

rt Annotation

Pronunciation hint.

05

rp Fallback

Parentheses text.

06

Migration

Skip rb today.

What Is the <rb> Tag?

The <rb> tag, short for “ruby base,” was used with the <ruby> element to denote the base text component of a ruby annotation. Ruby annotations add pronunciation or translation hints above or beside characters — common in Japanese, Chinese, and Korean typography.

⚠️
Deprecated in HTML5 — Do Not Use

The <rb> tag is deprecated and not supported for modern web development. Place base text directly inside <ruby> instead.

Learn rb only to understand legacy markup. For ruby annotations today, use ruby with rt and optional rp fallback.

🚫 Deprecated Status

The <rb> tag is deprecated in HTML5 and is not supported for use in modern web development practices. Instead, the <ruby> element is recommended for defining ruby annotations, with the rb functionality implicitly applied to the base text placed directly inside ruby.

  • Removed from the HTML5 ruby annotation model.
  • Base text no longer needs a separate wrapper element.
  • Using rb may cause inconsistent parsing across browsers.
  • Replace with ruby, rt, and rp in all new projects.

📝 Syntax

As <rb> is deprecated, understand its historical syntax within older HTML versions:

historical.html
<rb>Your Ruby Base Text</rb>

Modern Replacement Syntax

modern-ruby.html
<ruby><rt>kan</rt>
</ruby>

Syntax Rules

  • Do not wrap base characters in rb in new documents.
  • Put base text and rt annotations inside a single ruby element.
  • Use rp before and after rt for fallback parentheses.
  • Set lang on the page or element for correct typography.

⚡ Quick Reference

TopicDetailsModern choice
StatusDeprecated in HTML5Do not use
AttributesNoneN/A
Base textWas wrapped in rbDirect in ruby
AnnotationPronunciation hintrt
FallbackNon-ruby browsersrp
Browser support0% modernUse alternatives

⚖️ <rb> vs <ruby>

ElementStatusUse today?
<rb>Deprecated; ruby base wrapperNo
<ruby>Valid HTML5; annotation containerYes
<rt>Valid HTML5; ruby textYes
<rp>Valid HTML5; fallback parenthesesYes

🧰 Attributes

Although deprecated, the <rb> tag does not support any specific attributes in HTML.

None

No standard attributes exist for this deprecated element.

<rb>...</rb>

📚 Common Use Cases

The <rb> tag was primarily employed in conjunction with the <ruby> element to provide ruby annotations in East Asian typography. However, due to its deprecated status, its usage is not recommended in modern HTML development.

Do not use rb in new pages. Browsers no longer expect a separate base wrapper. Use ruby with base text and rt annotations instead.

Examples Gallery

Practice the modern replacements for deprecated rb: ruby, rt, and rp.

👀 Live Preview

Modern ruby annotation (replaces rb for base text):

kan

🔄 Alternatives

Given the deprecated status of <rb>, explore these modern elements for ruby annotations in East Asian typography:

ruby Tag

The ruby element wraps base text and annotations. Base characters go directly inside — no rb needed.

ruby-tag.html
<ruby><rt>kan</rt></ruby>
Try It Yourself

rt Tag

The rt element holds the ruby text — the pronunciation or translation shown above the base characters.

rt-tag.html
<ruby>東京<rt>とうきょう</rt></ruby>
Try It Yourself

rp Tag

The rp element provides fallback parentheses for browsers that do not support ruby layout.

rp-tag.html
<ruby><rp>(</rp><rt>kan</rt><rp>)</rp>
</ruby>
Try It Yourself

♿ Accessibility

  • Use ruby for annotations — Semantic markup helps assistive technology identify base text and readings.
  • Skip deprecated rb — Modern parsers expect base text directly in ruby.
  • Set lang attribute — Declare Japanese, Chinese, or Korean for correct pronunciation hints.
  • Provide context in prose — Explain unfamiliar characters when teaching language content.

🧠 How Ruby Annotations Work

1

Wrap in ruby

Place base characters and rt inside a ruby element.

Markup
2

Add rt annotation

The rt element holds pronunciation or translation text.

Annotation
3

Optional rp fallback

rp adds parentheses when ruby layout is unavailable.

Fallback
=

Use ruby today, not rb

Modern HTML gives supported, cross-browser ruby annotation markup.

Browser Support

Since the <rb> tag is deprecated, its browser support is limited and may vary. Avoid using this tag in favor of modern ruby, rt, and rp elements.

Deprecated · HTML5

Not supported for modern use

Do not rely on <rb>. Use ruby with base text and rt annotations instead.

0% Modern support
Google Chrome Not supported
Not supported
Mozilla Firefox Not supported
Not supported
Apple Safari Not supported
Not supported
Microsoft Edge Not supported
Not supported
Internet Explorer Not supported · EOL
Not supported
Opera Not supported
Not supported
<rb> tag 0% — deprecated

Bottom line: Do not use <rb>. Choose ruby, rt, and rp for annotations.

Conclusion

While the <rb> tag served a specific purpose in historical HTML versions, its deprecated status in HTML5 necessitates a shift towards modern markup practices.

By understanding its historical context and embracing alternative elements like ruby, rt, and rp, web developers can ensure their markup adheres to current standards and maintains compatibility across browsers.

💡 Best Practices

As rb is deprecated, the best practice is to avoid its usage altogether. Instead, utilize the ruby element for defining ruby annotations in compliance with modern HTML standards.

✅ Do

  • Use ruby with base text inside
  • Add rt for pronunciation hints
  • Include rp fallback parentheses
  • Set lang for East Asian content

❌ Don’t

  • Wrap base text in deprecated rb
  • Copy legacy ruby tutorials blindly
  • Assume rb still works in HTML5
  • Skip rt when annotation is needed

Key Takeaways

Knowledge Unlocked

Six truths every developer should know about <rb>

Bookmark these so you never use deprecated ruby base markup.

6
Core concepts
🌸 02

ruby Base

Text goes inside.

Replacement
📝 03

rt Hint

Annotation text.

Elements
🔤 04

rp Fallback

Parentheses.

Compat
🌎 05

East Asian

Typography use.

Context
📈 06

0% Support

Skip rb today.

Compatibility

❓ Frequently Asked Questions

Historically it wrapped the base text in ruby annotations. It is deprecated and should not be used today.
No. Place base text directly inside ruby instead of using rb.
Use ruby with rt for annotations and rp for fallback parentheses.
No. The deprecated rb element has no standard attributes.
No. It is deprecated and not supported for modern web development.

Use Modern Ruby Markup

Skip deprecated <rb>. Practice ruby, rt, and rp in the Try It editor.

Try ruby alternative →

About the author

Mari Selvan M P
Mari Selvan M P 🔗

Developer, cloud engineer, and technical writer

  • Experience 12 years building web and cloud systems
  • Focus Full Stack Development, AWS, and Developer Education

I write practical tutorials so students and working developers can learn by doing—from databases and APIs to deployment on AWS.

6 people found this page helpful