CSS Max-Width
What is CSS Max-Width?
The CSS max-width property specifies the maximum width an element can have. If the available space becomes smaller than the maximum width, the element automatically shrinks to fit the screen. This makes max-width extremely useful for creating responsive websites that work well on desktops, tablets, and mobile devices.
Why Use CSS Max-Width?
Without max-width, elements may become too wide on large screens or overflow on smaller screens. Using max-width helps create responsive layouts, readable text, flexible images, and properly sized containers.
Syntax of CSS Max-Width
<!DOCTYPE html>
<html>
<head>
<style>
.box{
max-width:400px;
}
</style>
</head>
<body>
<div class="box">
This box has a maximum width of 400px.
</div>
</body>
</html>
Step 1: Set a Maximum Width
The following example limits the maximum width of a container to 500px. On smaller screens, the container automatically becomes narrower.
<!DOCTYPE html>
<html>
<head>
<style>
.box{
max-width:500px;
background:#007BFF;
color:white;
padding:20px;
}
</style>
</head>
<body>
<div class="box">
This box will never become wider than 500px.
</div>
</body>
</html>
Step 2: Center a Container Using Max-Width
A common use of max-width is to create centered webpage containers using margin:auto.
<!DOCTYPE html>
<html>
<head>
<style>
.container{
max-width:700px;
margin:auto;
background:#28a745;
color:white;
padding:20px;
}
</style>
</head>
<body>
<div class="container">
This container stays centered on the page.
</div>
</body>
</html>
Step 3: Responsive Images Using Max-Width
Images often use max-width:100% so they never overflow their parent container.
<!DOCTYPE html>
<html>
<head>
<style>
img{
max-width:100%;
height:auto;
}
.container{
max-width:350px;
border:2px solid #333;
padding:10px;
}
</style>
</head>
<body>
<div class="container">
<img src="https://picsum.photos/600/350" alt="Sample Image">
</div>
</body>
</html>
Step 4: Responsive Text Container
Long paragraphs become easier to read when their width is limited using max-width.
<!DOCTYPE html>
<html>
<head>
<style>
.article{
max-width:600px;
margin:auto;
padding:20px;
border:1px solid #ddd;
background:#f8f9fa;
}
</style>
</head>
<body>
<div class="article">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. The text remains
easy to read because the container width is limited.
</div>
</body>
</html>
Step 5: Difference Between Width and Max-Width
The following example demonstrates why max-width is more responsive than a fixed width.
<!DOCTYPE html>
<html>
<head>
<style>
.width-box{
width:500px;
background:#dc3545;
color:white;
padding:15px;
margin-bottom:15px;
}
.max-box{
max-width:500px;
background:#007BFF;
color:white;
padding:15px;
}
</style>
</head>
<body>
<div class="width-box">
Fixed Width: 500px
</div>
<div class="max-box">
Maximum Width: 500px
</div>
</body>
</html>
Complete CSS Max-Width Example
<!DOCTYPE html>
<html>
<head>
<style>
body{
font-family:Arial;
background:#f5f9ff;
}
.container{
max-width:700px;
margin:auto;
background:white;
padding:20px;
border-radius:8px;
box-shadow:0 0 10px rgba(0,0,0,.15);
}
img{
max-width:100%;
height:auto;
}
button{
padding:12px 20px;
background:#007BFF;
color:white;
border:none;
border-radius:5px;
}
</style>
</head>
<body>
<div class="container">
<h2>Responsive Card</h2>
<img src="https://picsum.photos/700/300" alt="Responsive Image">
<p>
This layout automatically adjusts on different screen sizes.
</p>
<button>Learn More</button>
</div>
</body>
</html>
Advantages of CSS Max-Width
Best Practices
- Use max-width for responsive layouts.
- Combine max-width with margin:auto to center containers.
- Use max-width:100% for responsive images.
- Use height:auto with images.
- Avoid fixed widths whenever possible.
- Test layouts on desktop, tablet, and mobile devices.
- Choose an appropriate maximum width for readable content.
- Use responsive units whenever suitable.
Web Resources on CSS Max-Width
1. MDN Web Docs : max-width CSS property
2. CSS Tricks.com : A Tale of `width` and `max-width`
3. Dev.to : CSS Max-Width Explained, Stop Breaking Your Layout
3. MDN Web Docs : max() CSS function
🧪 Test Your CSS Code
Edit the CSS code on the left and click “Run Code” to see the result on the right.
Click “Run Code” to see the result here.