The HTML <q> tag
The HTML <q> element marks a short inline quotation within a sentence. Browsers automatically add the appropriate quotation marks, so you do not type them yourself. Use the cite attribute for the source URL.
Overview
The <q> element wraps a short quotation that flows inside the surrounding text. Its defining convenience is that the browser inserts the correct quotation marks for you — so you write the quoted words without adding your own quote characters.
Better still, it respects language: set the lang attribute and the browser uses that language's quotation marks (English "curly quotes", French guillemets, German low-high quotes, and so on). Nesting <q> elements automatically switches to the inner quotation style.
For longer, block-level quotations that stand apart from the text, use <blockquote> instead. As with blockquote, the cite attribute can hold the source URL as metadata.
Syntax
<p>She said <q>hello</q> and left.</p>
Attributes
The <q> element supports the following attributes, in addition to the global attributes available to every HTML element.
| Attribute | Value | Description |
|---|---|---|
cite |
A URL. | Cites the source URL of a quote or edit. |
Example
<p>As the saying goes, <q>less is more</q>.</p>
Best practices
- Use
<q>for short, inline quotations within a sentence. - Do not add your own quotation marks — the browser inserts them automatically.
- Set the
langattribute so the correct language-specific quotation marks are used. - For longer, block-level quotes, use <blockquote> instead.
Frequently asked questions
Do I need to add quotation marks inside a q element?
What is the difference between q and blockquote?
<q> is for short quotations that flow inline; <blockquote> is for longer, block-level quotations set apart from the text.How do I get the right quotation marks for another language?
lang attribute (e.g. lang="fr") and the browser uses that language's quotation marks.How do I change the quotation marks q uses?
quotes property, or remove them with q { quotes: none; }.