997
社区成员
发帖
与我相关
我的任务
分享
这是我参加朝闻道知识分享大赛的第37篇文章。
该案例展示了一个三列产品展示布局,适合用在电子商务页面。
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>产品展示布局</title>
<style>
.grid-container {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
padding: 20px;
background-color: #f5f5f5;
}
.product {
background-color: #fff;
border-radius: 8px;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
padding: 20px;
text-align: center;
font-size: 18px;
}
.product img {
width: 100%;
border-radius: 8px;
}
.product h3 {
margin-top: 10px;
font-size: 20px;
color: #333;
}
.product p {
font-size: 16px;
color: #777;
}
.product .price {
margin-top: 10px;
font-size: 20px;
color: #4CAF50;
}
</style>
</head>
<body>
<div class="grid-container">
<div class="product">
<img src="https://via.placeholder.com/150" alt="产品1">
<h3>产品1</h3>
<p>产品描述内容。</p>
<div class="price">¥100</div>
</div>
<div class="product">
<img src="https://via.placeholder.com/150" alt="产品2">
<h3>产品2</h3>
<p>产品描述内容。</p>
<div class="price">¥200</div>
</div>
<div class="product">
<img src="https://via.placeholder.com/150" alt="产品3">
<h3>产品3</h3>
<p>产品描述内容。</p>
<div class="price">¥300</div>
</div>
</div>
</body>
</html>
说明:
使用 repeat(3, 1fr)
创建三列布局,每个产品占一列。
gap
设置产品之间的间距,保持视觉上的分隔。
产品卡片包含图片、名称、描述和价格信息,通过卡片样式(如阴影、圆角)提升用户体验。
该案例展示了一个复杂的页面布局,包括头部、导航栏、内容区、侧边栏和页脚,适合用作完整的页面模板。
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>完整页面布局</title>
<style>
.grid-container {
display: grid;
grid-template-areas:
"header header header"
"nav main aside"
"footer footer footer";
grid-template-columns: 1fr 3fr 1fr;
grid-template-rows: auto 1fr auto;
gap: 20px;
padding: 20px;
height: 100vh;
background-color: #f8f8f8;
}
.header {
grid-area: header;
background-color: #4CAF50;
color: white;
padding: 20px;
text-align: center;
font-size: 24px;
}
.nav {
grid-area: nav;
background-color: #333;
color: white;
padding: 20px;
font-size: 18px;
}
.main {
grid-area: main;
background-color: #fff;
padding:
20px;
font-size: 18px;
border: 1px solid #ddd;
}
.aside {
grid-area: aside;
background-color: #333;
color: white;
padding: 20px;
font-size: 18px;
}
.footer {
grid-area: footer;
background-color: #4CAF50;
color: white;
text-align: center;
padding: 10px;
font-size: 18px;
}
</style>
</head>
<body>
<div class="grid-container">
<div class="header">页面头部</div>
<div class="nav">导航栏</div>
<div class="main">内容区域。此处可放置主要的网页内容。</div>
<div class="aside">侧边栏</div>
<div class="footer">页面底部</div>
</div>
</body>
</html>
说明:
使用 grid-template-areas
定义页面的结构,包括 header
、nav
、main
、aside
和 footer
区域。
三列布局:左侧为导航栏,中间为主内容区,右侧为侧边栏。
使用 gap
设置各区域之间的间距,使布局更加分明。