- CSS Tutorial
- CSS - Home
- CSS - Introduction
- CSS - Syntax
- CSS - Selectors
- CSS - Inclusion
- CSS - Measurement Units
- CSS - Colors
- CSS - Backgrounds
- CSS - Fonts
- CSS - Text
- CSS - Images
- CSS - Links
- CSS - Tables
- CSS - Borders
- CSS - Border Block
- CSS - Border Inline
- CSS - Margins
- CSS - Lists
- CSS - Padding
- CSS - Cursor
- CSS - Outlines
- CSS - Dimension
- CSS - Scrollbars
- CSS - Inline Block
- CSS - Dropdowns
- CSS - Visibility
- CSS - Overflow
- CSS - Clearfix
- CSS - Float
- CSS - Arrows
- CSS - Resize
- CSS - Quotes
- CSS - Order
- CSS - Position
- CSS - Hyphens
- CSS - Hover
- CSS - Display
- CSS - Focus
- CSS - Zoom
- CSS - Translate
- CSS - Height
- CSS - Hyphenate Character
- CSS - Width
- CSS - Opacity
- CSS - Z-Index
- CSS - Bottom
- CSS - Navbar
- CSS - Overlay
- CSS - Forms
- CSS - Align
- CSS - Icons
- CSS - Image Gallery
- CSS - Comments
- CSS - Loaders
- CSS - Attr Selectors
- CSS - Combinators
- CSS - Root
- CSS - Box Model
- CSS - Counters
- CSS - Clip
- CSS - Writing Mode
- CSS - Unicode-bidi
- CSS - min-content
- CSS - All
- CSS - Inset
- CSS - Isolation
- CSS - Overscroll
- CSS - Justify Items
- CSS - Justify Self
- CSS - Tab Size
- CSS - Pointer Events
- CSS - Place Content
- CSS - Place Items
- CSS - Place Self
- CSS - Max Block Size
- CSS - Min Block Size
- CSS - Mix Blend Mode
- CSS - Max Inline Size
- CSS - Min Inline Size
- CSS - Offset
- CSS - Accent Color
- CSS - User Select
- CSS Advanced
- CSS - Grid
- CSS - Grid Layout
- CSS - Flexbox
- CSS - Visibility
- CSS - Positioning
- CSS - Layers
- CSS - Pseudo Classes
- CSS - Pseudo Elements
- CSS - @ Rules
- CSS - Text Effects
- CSS - Paged Media
- CSS - Printing
- CSS - Layouts
- CSS - Validations
- CSS - Image Sprites
- CSS - Important
- CSS - Data Types
- CSS3 Tutorial
- CSS3 - Tutorial
- CSS - Rounded Corner
- CSS - Border Images
- CSS - Multi Background
- CSS - Color
- CSS - Gradients
- CSS - Box Shadow
- CSS - Box Decoration Break
- CSS - Caret Color
- CSS - Text Shadow
- CSS - Text
- CSS - 2d transform
- CSS - 3d transform
- CSS - Transition
- CSS - Animation
- CSS - Multi columns
- CSS - Box Sizing
- CSS - Tooltips
- CSS - Buttons
- CSS - Pagination
- CSS - Variables
- CSS - Media Queries
- CSS - Functions
- CSS - Math Functions
- CSS - Masking
- CSS - Shapes
- CSS - Style Images
- CSS - Specificity
- CSS - Custom Properties
- CSS Responsive
- CSS RWD - Introduction
- CSS RWD - Viewport
- CSS RWD - Grid View
- CSS RWD - Media Queries
- CSS RWD - Images
- CSS RWD - Videos
- CSS RWD - Frameworks
- CSS References
- CSS - Questions and Answers
- CSS - Quick Guide
- CSS - References
- CSS - Color References
- CSS - Web browser References
- CSS - Web safe fonts
- CSS - Units
- CSS - Animation
- CSS Resources
- CSS - Useful Resources
- CSS - Discussion
CSS - Data Types
CSS data types define the types of values that can be used for various CSS properties. Each CSS property expects a specific type of value, and understanding these data types is essential for properly styling and formatting web content.
The types listed below are the most common, however it is not a complete list of all types defined in any CSS specification.
Syntax
selector { property: <unit-data-type>; }
CSS syntax uses a keyword between the inequality signs "<" and ">" to indicate data types.
Textual Data Types
These types include keywords, identifiers, strings, and URLs.
Pre-defined Keywords
Represents a predefined keyword that is specific to the property it's used with (e.g., auto, inherit, none).
CSS-wide keywords
The table given below lists all the CSS-wide keywords:
Property | Description |
---|---|
<custom-ident> | A user-defined identifier, such as a name given with the grid-area property. |
<dashed-ident> | Using CSS Custom Properties, a <custom-ident> begin with two dashes. |
<string> | A string that has been quoted, such as the value for the content property. |
url() | A reference to a resource, such the background-image value. |
Numeric Data Types
These data types represent quantities, indexes, and positions. The following table lists all the numeric data types:
Property | Description |
---|---|
<integer> | One or more decimal units (0–9). |
<number> | Real numbers may include a fractional component, such as 1 or 1.54. |
<dimension> | A numerical value that includes a unit, such as 23px or 15em. |
<percentage> | A numerical value that includes a percentage symbol, such as 15%. |
<ratio> | A ratio is represented as <number> / <number>. |
<flex> | CSS Grid Layout introduces a flexible length, represented by a <number> with the fr unit attached for grid track sizing. |
Quantities
Distance and other quantities are defined using these types. The following table lists all the quantities:
Property | Description |
---|---|
<length> | Lengths are a dimension that refers to distances. |
<angle> | Angles are represented as a <dimension> with deg, grad, rad, or turn units, and used in properties such as linear-gradient(). |
<time> | Duration units are represented as a <dimension> with a s or ms unit. |
<resolution> | This is a <dimension> with the unit identifier dpi, dpcm, dppx, or x. |
Combinations of Types
CSS properties that accept both a dimension and a percentage value fall in this category. The percentage value will be converted to a quantity relative to the allowable dimension. Properties that take both a percentage and a dimension will use one of the following types:
Property | Description |
---|---|
<length-percentage> | A type that can take a a length or a percentage value. |
<angle-percentage> | A type that can take a a angle or a percentage value. |
<time-percentage> | A type that can take a a time or a percentage value. |
Color
Color related properties define the <color> data type and additional types related to colors.
The following table lists all the color related data types:
Property | Description |
---|---|
<color> | A color represented as a keyword or a numerical value. |
<color-interpolation-method> | Determines the color space used when creating a transition between different <color> values. |
<hex-color> | Describes the hexadecimal color syntax of an sRGB color using the primary color components (red, green, blue) denoted as hexadecimal numbers, along with its transparency. |
<system-color> | Commonly linked to the default color selections for different components on a webpage. |
<alpha-value> | Represents the transparency of a color. The value can be either a <number> (0 is fully transparent, 1 is fully opaque) or a <percentage> (0 is fully transparent, 100% is fully opaque). |
<hue> | Define the <angle> of the color wheel for the <absolute-color-functions> component using units such as, deg, grad, rad, turn, or a unitless number (interpreted as deg). |
<hue-interpolation-method> | Determines the algorithm that is used for interpolation between hue values. This method specifies how to find a midpoint between two hue values based on a color wheel. It is a component of the <color-interpolation-method> data type. |
<named-color> | Specified as a <ident> in syntax, depicts colors by names such as red, blue, black, or light green. |
Images
CSS Images Specification defines image-related data types, such as gradients. The following table lists all the images related data types:
Property | Description |
---|---|
<image> | A URL pointing to an image or color gradient. |
2D Positioning
The following table lists all the 2D Positioning related data types:
Property | Description |
---|---|
<position> | Determines the position of an object region by providing a keyword value, such as top or left, or a <length-percentage>. |
Calculation Data Types
CSS math functions use these data types in calculations. The following table lists all the calculation data types:
Property | Description |
---|---|
<calc-sum> | A calculation is a series of calculated values separated by addition (+) and subtraction (-) operators. This data type requires that both values contain units. |
<calc-constant> | Defines CSS keywords for numeric constants such as e and π, which can be used in CSS math functions. |
Display
The table given below lists all the display related data types:
Property | Description |
---|---|
<display-box> | Determines if an element creates display boxes or not. |
<display-inside> | Determines the inner display of an element, which specifies the formatting context type, for a non-replaced element. |
<display-internal> | Determines the internal display values, which have relevance only to that particular layout model. |
<display-legacy> | A single-keyword syntax has been used for display property in CSS 2, which required separate keywords for block-level and inline-level variants of the same layout model. |
<display-listitem> | The keyword list-item makes the element to generate a ::marker pseudo-element with the content that is specified by the list-style properties, along with a main box of the specified type for its own contents. |
<display-outside> | An element's outer display type, which is essential in flow layout, is determined by the <display-outside> keywords. |
Other Data Types
The table given below lists some more data types:
Property | Description |
---|---|
<absolute-size> | Defines absolute font size in the font shorthand and font-size properties. |
<basic-shape> | Defines different shapes used for properties such as clip-path, shape-outside, and offset-path. |
<blend-mode> | Specifies the color scheme that should be used when elements overlap. |
<box-edge> | Defines different box edges, such as content-box and border-box. |
<easing-function> | Control the speed of a transition or animation between two states of an element. |
<filter-function> | Signifies a graphical effect, which changes the appearance of an input image. |
<generic-family> | Signifies the keyword values for generic font families. |
<gradient> | Demonstrates a progressive transition between two or more colors. |
<ident> | Signifies an arbitrary string that is used as an identifier. |
<line-style> | Specifying how a line appears or doesn't appear in a certain context are included in the <line-style> enumerated value type. |
<overflow> | The keyword values used in relation to the shorthand overflow property and the longhand overflow-block, overflow-inline, overflow-x, and overflow-y properties are indicated by the enumerated value type <overflow>. |
<relative-size> | Define a relative size to the calculated size of the parent element. |
<transform-function> | The transformation functions are responsible for rotating, scaling (resizing), skewing (distorting), or moving an element in two-dimensional (2D) and three-dimensional (3D) space. |