- CSS - Home
- CSS - Roadmap
- CSS - Introduction
- CSS - Syntax
- CSS - Inclusion
- CSS - Types
- CSS - Measurement Units
- CSS - Selectors
- 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 - Cascading
- CSS - Universal Selectors
- CSS - ID Selectors
- CSS - Group Selectors
- CSS - Class Selectors
- CSS - Child Selectors
- CSS - Element Selectors
- CSS - Descendant Selectors
- CSS - General Sibling Selectors
- CSS - Adjacent Sibling Selectors
- 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 Advanced Features
- 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 Interview Questions
- CSS Online Quiz
- CSS Online Test
- CSS Mock Test
- CSS - Quick Guide
- CSS - Cheatsheet
- CSS - Properties References
- CSS - Functions References
- CSS - Color References
- CSS - Web Browser References
- CSS - Web Safe Fonts
- CSS - Units
- CSS - Animation
- CSS Resources
- CSS - Useful Resources
- CSS - Discussion
CSS - container-type Property
The container-type Property
CSS container-type property specifies an element to act as a query container for its child element. It is an important property that allows container queries. Using container queries, styles can be applied based on the container's dimensions (i.e. width and height) instead of the viewport.
Syntax
The syntax for the CSS container-type property is as follows:
container-type: size | inline-size | normal;
Property Values
| Value | Description |
|---|---|
| normal | It is the default value where the element does not act as a container for queries. |
| size | It specifies container queries based on both the width and height of the container. |
| inline-size | It specifies container queries based only on the width. |
The following examples illustrate how to use the CSS container-type property in different scenarios.
Using inline-size for Responsive Elements
The inline-size value makes a container responsive based on its width.
Example
In this example, we have used the inline-size value to make the container responsive based on the container width.
<!DOCTYPE html>
<html lang="en">
<head>
<title>CSS container-type Property</title>
<style>
.container {
container-type: inline-size;
width: 60%;
border: 1px solid #031926;
padding: 20px;
margin: auto;
}
.content {
text-align: center;
font-size: 18px;
background-color: #031926;
padding: 15px;
color: white;
font-family: Verdana, sans-serif;
}
@container (max-width: 450px) {
.content {
font-size: 16px;
background-color: #04af2f;
}
}
</style>
</head>
<body>
<h2>CSS container-type Property</h2>
<div class="container">
<div class="content">
Resize the container to see changes.
</div>
</div>
</body>
</html>
Using size for Responsive Elements
The size value makes a container responsive based on both width and height.
Example
The following example uses size value to make the container responsive based on the container's width and height.
<!DOCTYPE html>
<html lang="en">
<head>
<title>CSS container-type Property</title>
<style>
.container {
container-type: size;
width: 300px;
height: 200px;
border: 2px solid black;
display: flex;
align-items: center;
justify-content: center;
resize: both;
overflow: auto;
}
.box {
padding: 20px;
background-color: lightgray;
text-align: center;
}
@container (min-width: 350px) {
.box {
background-color: orange;
}
}
@container (min-height: 250px) {
.box {
background-color: green;
color: white;
}
}
</style>
</head>
<body>
<h2>Using size for Both Width and Height Queries</h2>
<div class="container">
<div class="box">Resize Me</div>
</div>
</body>
</html>
Using normal to Disable Container Queries
We have set the container-type property to normal i.e. the default value where the element does not act as a container for queries.
Example
The following example disables the element for container queries.
<!DOCTYPE html>
<html lang="en">
<head>
<title>CSS container-type Property</title>
<style>
.container {
container-type: normal;
width: 60%;
border: 1px solid #031926;
padding: 20px;
margin: auto;
}
.content {
text-align: center;
font-size: 18px;
background-color: #031926;
padding: 15px;
color: white;
font-family: Verdana, sans-serif;
}
@container (max-width: 450px) {
.content {
font-size: 16px;
background-color: #04af2f;
}
}
</style>
</head>
<body>
<h2>CSS container-type Property</h2>
<div class="container">
<div class="content">
This container does not support queries.
Try to resize the container.
</div>
</div>
</body>
</html>
Supported Browsers
| Property | ![]() |
![]() |
![]() |
![]() |
![]() |
|---|---|---|---|---|---|
| container-type | 105 | 105 | 110 | 16 | 91 |




