基于HTML5和CSS3搭建一个Web网页(三)

倘若代码中有任何问题或疑问,欢迎留言交流~

网页描述

创建一个包含导航栏、主内容区域和页脚的响应式网页。

需求:

  1. 导航栏:
    在页面顶部创建一个导航栏,包含首页、关于我们、服务和联系我们等链接。
    设置导航栏样式,包括字体、颜色和背景颜色等。
    在滚动页面时,导航栏应始终固定在顶部。
  2. 主内容区域:
    包含介绍性文本和至少两张图片。
    对文本和图片应用样式,例如字体样式、对齐方式等。
  3. 页脚:
    包含版权信息和日期,并进行相应的样式设计.
  4. 响应式布局:
    当在不同大小的设备(如手机、平板电脑、笔记本电脑等)上查看时,网页应该具有很好的可读性和易用性。
    提示:
    使用HTML5的新元素,如header、footer、nav、section、article等进行布局。
    使用CSS3的新特性,如渐变、阴影、动画、Flexbox或Grid布局等提升网页的视觉效果。
    使用媒体查询(@media)来设置响应式布局的断点。

在上一篇文字已经解决了导航栏,基于HTML5和CSS3搭建一个Web网页(二)。下面继续完成这个网页的开发。

(PS:发现之前导航栏的颜色无法遮住主内容区域,因此换了下颜色。)

主内容区域

**主内容区域的主题框架为一个标题和三个子区域,子区域中有一个图片加一个段落,段落与图片左右排列。**因此代码结构如下:

html 复制代码
<div class="main">
    <div class="main-header">
        <h3></h3>
    </div>
    <div class="p-one">
        <div class="one-img">
            <img src="" alt="">
        </div>
        <div class="one-p">
            <p></p>
        </div>
    </div>
    <div class="p-two">
        
        <div class="two-img">
            <img src="" alt="">
        </div>
        <div class="two-p">
            <p></p>
        </div>
    </div>
    <div class="p-one">
        <div class="one-img">
            <img src="" alt="">
        </div>
        <div class="one-p">
            <p></p>
        </div>
    </div>
</div>

其中p-one和p-two的排列不一样,前者图片在左,后者图片在右。

填充内容并加上清除浮动类后:

index.html

index.html文件内容如下:

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Web</title>
    <link rel="stylesheet" href="../css/style.css">
    <link rel="stylesheet" href="../css/header.css">
    <link rel="stylesheet" href="../css/main.css">
    <link rel="stylesheet" href="../css/footer.css">
    <link rel="stylesheet" href="../css/media.css">
</head>
<body>
    <div class="header">
        <div class="header-main">
            <!-- 借助复选框实现菜单效果 -->
            <input type="checkbox" id="toggle-box"> 
            <!-- 汉堡菜单按钮 -->
            <label for="toggle-box" class="menu">☰</label>
            <ul>
                <li><a href="index.html">  首页  </a></li>
                <li><a href="#">关于我们</a></li>
                <li><a href="#">  服务  </a></li>
                <li><a href="#">联系我们</a></li>
            </ul>
        </div>
        <!-- 清除浮动类 -->
        <div class="clearfix"></div>
    </div>
    <div class="main">
        <div class="main-header">
            <h2>Web前端开发技术</h2>
        </div>
        <div class="main-middle">
            <div class="p-one">
                <div class="one-img">
                    <img src="../image/HTML5.png" alt="">
                </div>
                <div class="one-p">
                    <h3>【HTML5】</h3>
                    <p>不仅仅是HTML规范的当前最新版本,HTML5进化的重大意义还在于HTML5从技术层面带来了八个类别的革新。HTML5规范以"用户至上"为宗旨。也就是说在遇到冲突时,规范的优先级为用户> 页面作者>实现者(浏览器)> 规范开发者(W3C/WHATWG)>纯理论。除此之外,HTML5还引入了一种新的安全模型来保证HTML5足够安全。</p>
                </div>
                <div class="clearfix"></div>
            </div>
            <div class="p-two">
                
                <div class="two-img">
                    <img src="../image/CSS3.png" alt="">
                </div>
                <div class=two-p">
                    <h3>【CSS3】</h3>
                    <p>CSS3是CSS的当前最新版本,该版本提供了更加丰富且实用的规范。在Web开发中采用CSS3技术将会美化页面,显著地提高用户体验,同时也能极大地提高程序的性能。例如列表模块、超链接、语言模块、背景和边框、颜色、文字特效、多栏布局和动画,等等。</p>
                </div>
                <div class="clearfix"></div>
            </div>
            <div class="p-one">
                <div class="one-limg">
                    <img src="../image/JS.png" alt="">
                </div>
                <div class="one-p">
                    <h3>【JavaScript】</h3>
                    <p>作为一种广泛使用的脚本语言,JavaScript对于今日的网络开发非常关键。JavaScript不只是给网页带来生动的交互效果,更重要的是,JavaScript在整个网络构建的技术体系中担任着关键角色。JavaScript 强调"用户优先",旨在通过强大且灵活的语法,使开发者能够更方便地创建出用户友好、性能优秀和交互丰富的应用。</p>
                </div>
                <div class="clearfix"></div>
            </div>
        </div>
        <div class="clearfix"></div>
    </div>
    <div class="footer"></div>
</body>
</html>

最终补充css代码,得到的页面效果为:

main.css文件

而对于的main.css文件内容如下:

css 复制代码
.main {
    /* 上边距隔开导航栏的高度 */
    padding-top: 50px;
    /* 区域内容默认居中 */
    text-align: center;
    /* 小小设置下背景的颜色 */
    background-color: rgba(0,0,0,0.1);
}
.main .main-header h2{
    /* 设置下主标题的上下边距 */
    margin: 20px 0;
}

/* 初始化图片的格式 */
.main img {
    width: 200px;
    height: 200px;
    margin: 3%;
}

/* 段落区域的边距 */
.main-middle {
    width: 80%;
    margin: 0 10%;
}

/* 使段落区域里的内容垂直居中 */
.p-one, .p-two{
    display: flex;
    align-items: center; /* 使子元素垂直居中 */
    justify-content: space-between; /* 将子元素撑开到两端,中间留有空间 */
}

/* 利用浮动(float)设置图片与文字左右排列 */
.p-two {
    flex-direction: row-reverse; /* 这样可以让文字在左,图片在右 */
}
.two-img{
    float: right;
}

.one-p, .two-p {
    display: block;
    padding: 20px 0 15px 15px;
}
p{
    margin: 20px 0;
    /* 首行缩进两字符 */
    text-indent:2em ;
    /* 设置左对齐 */
    text-align: left;
    line-height: 25px;
}
相关推荐
科技探秘人6 分钟前
Chrome与火狐哪个浏览器的隐私追踪功能更好
前端·chrome
科技探秘人7 分钟前
Chrome与傲游浏览器性能与功能的深度对比
前端·chrome
JerryXZR12 分钟前
前端开发中ES6的技术细节二
前端·javascript·es6
七星静香14 分钟前
laravel chunkById 分块查询 使用时的问题
java·前端·laravel
q24985969317 分钟前
前端预览word、excel、ppt
前端·word·excel
小华同学ai22 分钟前
wflow-web:开源啦 ,高仿钉钉、飞书、企业微信的审批流程设计器,轻松打造属于你的工作流设计器
前端·钉钉·飞书
Gavin_91531 分钟前
【JavaScript】模块化开发
前端·javascript·vue.js
懒大王爱吃狼2 小时前
Python教程:python枚举类定义和使用
开发语言·前端·javascript·python·python基础·python编程·python书籍
逐·風6 小时前
unity关于自定义渲染、内存管理、性能调优、复杂物理模拟、并行计算以及插件开发
前端·unity·c#
Devil枫6 小时前
Vue 3 单元测试与E2E测试
前端·vue.js·单元测试