The font-kerning
CSS property sets the use of the kerning information stored in a font.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
Kerning defines how letters are spaced. In well-kerned fonts, this feature makes character spacing more uniform and pleasant to read than it would otherwise be.
In the image below, for instance, the examples on the left do not use kerning, while the ones on the right do:
Syntax
The font-kerning
property is specified as one of the keyword values listed below.
Values
auto
- The browser determines whether font kerning should be used or not. For example, some browsers will disable kerning on small fonts, since applying it could harm the readability of text.
normal
- Font kerning information stored in the font must be applied.
none
- Font kerning information stored in the font is disabled.
Formal definition
Initial value | auto |
---|---|
Applies to | all elements. It also applies to ::first-letter and ::first-line . |
Inherited | yes |
Computed value | as specified |
Animation type | discrete |
Formal syntax
auto | normal | none
Examples
Enabling and disabling kerning
HTML
<div id="kern"></div> <div id="nokern"></div> <textarea id="input">AV T. ij</textarea>
CSS
div { font-size: 2rem; font-family: serif; } #nokern { font-kerning: none; } #kern { font-kerning: normal; }
JavaScript
let input = document.getElementById('input'); let kern = document.getElementById('kern'); let nokern = document.getElementById('nokern'); input.addEventListener('keyup', function() { kern.textContent = input.value; /* Update content */ nokern.textContent = input.value; }); kern.textContent = input.value; /* Initialize content */ nokern.textContent = input.value;
Specifications
Specification | Status | Comment |
---|---|---|
CSS Fonts Module Level 3 The definition of 'font-kerning' in that specification. |
Candidate Recommendation | Initial definition. |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
font-kerning | Chrome
Full support
33
| Edge Full support 79 | Firefox
Full support
32
| IE No support No | Opera
Full support
20
| Safari
Full support
9
| WebView Android
Full support
4.4.3
| Chrome Android
Full support
33
| Firefox Android
Full support
32
| Opera Android
Full support
20
| Safari iOS
Full support
9
| Samsung Internet Android
Full support
2.0
|
Legend
- Full support
- Full support
- No support
- No support
- User must explicitly enable this feature.
- User must explicitly enable this feature.
- Requires a vendor prefix or different name for use.
- Requires a vendor prefix or different name for use.