前端CSS-网格布局案例02| “朝闻道”知识分享大赛

2201_75824342 2024-11-29 23:58:28

这是我参加朝闻道知识分享大赛的第37篇文章。


案例 3:产品展示布局

该案例展示了一个三列产品展示布局,适合用在电子商务页面。

<!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 设置产品之间的间距,保持视觉上的分隔。

  • 产品卡片包含图片、名称、描述和价格信息,通过卡片样式(如阴影、圆角)提升用户体验。

案例 4:完整页面布局

该案例展示了一个复杂的页面布局,包括头部、导航栏、内容区、侧边栏和页脚,适合用作完整的页面模板。

<!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 定义页面的结构,包括 headernavmainasidefooter 区域。

  • 三列布局:左侧为导航栏,中间为主内容区,右侧为侧边栏。

  • 使用 gap 设置各区域之间的间距,使布局更加分明。


 

...全文
15 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

997

社区成员

发帖
与我相关
我的任务
社区描述
中南民族大学CSDN高校俱乐部聚焦校内IT技术爱好者,通过构建系统化的内容和运营体系,旨在将中南民族大学CSDN社区变成校内最大的技术交流沟通平台。
经验分享 高校 湖北省·武汉市
社区管理员
  • c_university_1575
  • WhiteGlint666
  • wzh_scuec
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

欢迎各位加入中南民族大学&&CSDN高校俱乐部社区(官方QQ群:908527260),成为CSDN高校俱乐部的成员具体步骤(必填),填写如下表单,表单链接如下:
人才储备数据库及线上礼品发放表单邀请人吴钟昊:https://ddz.red/CSDN
CSDN高校俱乐部是给大家提供技术分享交流的平台,会不定期的给大家分享CSDN方面的相关比赛以及活动或实习报名链接,希望大家一起努力加油!共同建设中南民族大学良好的技术知识分享社区。

注意:

1.社区成员不得在社区发布违反社会主义核心价值观的言论。

2.社区成员不得在社区内谈及政治敏感话题。

3.该社区为知识分享的平台,可以相互探讨、交流学习经验,尽量不在社区谈论其他无关话题。

试试用AI创作助手写篇文章吧