Ширина букв в html

font-stretch

The font-stretch CSS property selects a normal, condensed, or expanded face from a font.

Try it

Syntax

/* Keyword values */ font-stretch: ultra-condensed; font-stretch: extra-condensed; font-stretch: condensed; font-stretch: semi-condensed; font-stretch: normal; font-stretch: semi-expanded; font-stretch: expanded; font-stretch: extra-expanded; font-stretch: ultra-expanded; /* Percentage values */ font-stretch: 50%; font-stretch: 100%; font-stretch: 200%; /* Global values */ font-stretch: inherit; font-stretch: initial; font-stretch: revert; font-stretch: revert-layer; font-stretch: unset; 

This property may be specified as a single keyword value or a single value.

Values

Specifies a normal font face.

semi-condensed , condensed , extra-condensed , ultra-condensed

Specifies a more condensed font face than normal, with ultra-condensed as the most condensed.

semi-expanded , expanded , extra-expanded , ultra-expanded

Specifies a more expanded font face than normal, with ultra-expanded as the most expanded.

Keyword to numeric mapping

The table below shows the mapping between keyword values and numeric percentages:

Keyword Percentage
ultra-condensed 50%
extra-condensed 62.5%
condensed 75%
semi-condensed 87.5%
normal 100%
semi-expanded 112.5%
expanded 125%
extra-expanded 150%
ultra-expanded 200%

Description

Some font families offer additional faces in which the characters are narrower than the normal face (condensed faces) or wider than the normal face (expanded faces).

You can use font-stretch to select a condensed or expanded face from such fonts. If the font you are using does not offer condensed or expanded faces, this property has no effect.

Font face selection

The face selected for a given value of font-stretch depends on the faces supported by the font in question. If the font does not provide a face that exactly matches the given value, then values less than 100% map to a narrower face, and values greater than or equal to 100% map to a wider face.

The table below demonstrates the effect of supplying various different percentage values of font-stretch on two different fonts:

@font-face  font-family: "Inconsolata"; src: url("https://fonts.gstatic.com/s/inconsolata/v31/QlddNThLqRwH-OJ1UHjlKENVzlm-WkL3GZQmAwPyya15.woff2") format("woff2"); font-stretch: 50% 200%; > @font-face  font-family: "Anek Malayalam"; src: url("https://fonts.gstatic.com/s/anekmalayalam/v4/6qLUKZActRTs_mZAJUZWWkhke0nYa-f6__Azq3-gP1W7db9_.woff2") format("woff2"); font-stretch: 75% 125%; > td  border: solid; border-width: 1px; > #inconsolata td  font: 90px Inconsolata, sans-serif; > #anek-malayalam td  font: 90px "Anek Malayalam"; > #inconsolata td:nth-child(2), #anek-malayalam td:nth-child(2)  font-stretch: 50%; > #inconsolata td:nth-child(3), #anek-malayalam td:nth-child(3)  font-stretch: 62.5%; > #inconsolata td:nth-child(4), #anek-malayalam td:nth-child(4)  font-stretch: 75%; > #inconsolata td:nth-child(5), #anek-malayalam td:nth-child(5)  font-stretch: 87.5%; > #inconsolata td:nth-child(6), #anek-malayalam td:nth-child(6)  font-stretch: 100%; > #inconsolata td:nth-child(7), #anek-malayalam td:nth-child(7)  font-stretch: 112.5%; > #inconsolata td:nth-child(8), #anek-malayalam td:nth-child(8)  font-stretch: 125%; > #inconsolata td:nth-child(9), #anek-malayalam td:nth-child(9)  font-stretch: 150%; > #inconsolata td:nth-child(10), #anek-malayalam td:nth-child(10)  font-stretch: 200%; > 
table class="standard-table"> thead> tr> th scope="row">th> th scope="col">50%th> th scope="col">62.5%th> th scope="col">75%th> th scope="col">87.5%th> th scope="col">100%th> th scope="col">112.5%th> th scope="col">125%th> th scope="col">150%th> th scope="col">200%th> tr> thead> tbody> tr id="inconsolata"> th scope="row">Inconsolatath> td>etd> td>etd> td>etd> td>etd> td>etd> td>etd> td>etd> td>etd> td>etd> tr> tr id="anek-malayalam"> th scope="row">Anek Malayalamth> td>etd> td>etd> td>etd> td>etd> td>etd> td>etd> td>etd> td>etd> td>etd> tr> tbody> table> 
  • Anek Malayalam is a variable google font that supports widths from 75% to 125%. Values below and above this range select the closest matching font.
  • Inconsolata is a variable font that offers a continuous range of widths from 50% to 200%.

Formal definition

Formal syntax

font-stretch =
normal |
|
ultra-condensed |
extra-condensed |
condensed |
semi-condensed |
semi-expanded |
expanded |
extra-expanded |
ultra-expanded

Examples

Setting font stretch percentages

Specifications

Note: The font-stretch property was initially defined in CSS 2, but dropped in CSS 2.1 due to the lack of browser implementation. It was brought back in CSS 3.

Browser compatibility

BCD tables only load in the browser

See also

Found a content problem with this page?

This page was last modified on Jul 7, 2023 by MDN contributors.

Your blueprint for a better internet.

Источник

font-size

The font-size CSS property sets the size of the font. Changing the font size also updates the sizes of the font size-relative units, such as em , ex , and so forth.

Try it

Syntax

/* values */ font-size: xx-small; font-size: x-small; font-size: small; font-size: medium; font-size: large; font-size: x-large; font-size: xx-large; font-size: xxx-large; /* values */ font-size: smaller; font-size: larger; /* values */ font-size: 12px; font-size: 0.8em; /* values */ font-size: 80%; /* math value */ font-size: math; /* Global values */ font-size: inherit; font-size: initial; font-size: revert; font-size: revert-layer; font-size: unset; 

The font-size property is specified in one of the following ways:

  • As one of the absolute-size, relative-size or math keywords
  • As a or a , relative to the element’s font size.

Values

Absolute-size keywords, based on the user’s default font size (which is medium ).

Relative-size keywords. The font will be larger or smaller relative to the parent element’s font size, roughly by the ratio used to separate the absolute-size keywords above.

For font-relative units that are root-based (such as rem ), the font size is relative to the size of the font used by the (root) element.

Note: To maximize accessibility, it is generally best to use values that are relative to the user’s default font size.

  • math Experimental Special mathematical scaling rules must be applied when determining the computed value of the font-size property.

Description

There are several ways to specify the font size, including keywords or numerical values for pixels or ems. Choose the appropriate method based on the needs of the particular web page.

Keywords

Pixels

Setting the font size in pixel values ( px ) is a good choice when you need pixel accuracy. A px value is static. This is an OS-independent and cross-browser way of literally telling the browsers to render the letters at exactly the number of pixels in height that you specified. The results may vary slightly across browsers, as they may use different algorithms to achieve a similar effect.

Font sizing settings can also be used in combination. For example, if a parent element is set to 16px and its child element is set to larger , the child element displays larger than the parent element on the page.

Note: Defining font sizes in px is not accessible, because the user cannot change the font size in some browsers. For example, users with limited vision may wish to set the font size much larger than the size chosen by a web designer. Avoid using them for font sizes if you wish to create an inclusive design.

Ems

Using an em value creates a dynamic or computed font size (historically the em unit was derived from the width of a capital «M» in a given typeface.). The numeric value acts as a multiplier of the font-size property of the element on which it is used. Consider this example:

In this case, the font size of

elements will be double the computed font-size inherited by

elements. By extension, a font-size of 1em equals the computed font-size of the element on which it is used.

If a font-size has not been set on any of the

‘s ancestors, then 1em will equal the default browser font-size , which is usually 16px . So, by default 1em is equivalent to 16px , and 2em is equivalent to 32px . If you were to set a font-size of 20px on the element say, then 1em on the

elements would instead be equivalent to 20px , and 2em would be equivalent to 40px .

In order to calculate the em equivalent for any pixel value required, you can use this formula:

em = desired element pixel value / parent element font-size in pixels

For example, suppose the font-size of the of the page is set to 16px . If the font-size you want is 12px , then you should specify 0.75em (because 12/16 = 0.75). Similarly, if you want a font size of 10px , then specify 0.625em (10/16 = 0.625); for 22px , specify 1.375em (22/16).

The em is a very useful unit in CSS since it automatically adapts its length relative to the font that the reader chooses to use.

One important fact to keep in mind: em values compound. Take the following HTML and CSS:

html  font-size: 100%; > span  font-size: 1.6em; > 
div> span>Outer span>innerspan> outerspan> div> 

Assuming that the browser’s default font-size is 16px, the words «outer» would be rendered at 25.6px, but the word «inner» would be rendered at 40.96px. This is because the inner ‘s font-size is 1.6em which is relative to its parent’s font-size , which is in turn relative to its parent’s font-size . This is often called compounding.

Rems

rem values were invented in order to sidestep the compounding problem. rem values are relative to the root html element, not the parent element. In other words, it lets you specify a font size in a relative fashion without being affected by the size of the parent, thereby eliminating compounding.

The CSS below is nearly identical to the previous example. The only exception is that the unit has been changed to rem .

html  font-size: 100%; > span  font-size: 1.6rem; > 

Then we apply this CSS to the same HTML, which looks like this:

span>Outer span>innerspan> outerspan> 

In this example, the words «outer inner outer» are all displayed at 25.6px (assuming that the browser’s font-size has been left at the default value of 16px).

Ex

Like the em unit, an element’s font-size set using the ex unit is computed or dynamic. It behaves in exactly the same way, except that when setting the font-size property using ex units, the font-size equals the x-height of the first available font used on the page. The number value multiplies the element’s inherited font-size and the font-size compounds relatively.

See the W3C Editor’s Draft for a more detailed description of font-relative length units such as ex .

Formal definition

Initial value medium
Applies to all elements. It also applies to ::first-letter and ::first-line .
Inherited yes
Percentages refer to the parent element’s font size
Computed value as specified, but with relative lengths converted into absolute lengths
Animation type a length

Formal syntax

Источник

Читайте также:  Javascript и скрытые поля
Оцените статью