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

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

网页描述

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

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

导航栏

首先搭建导航栏的样式,如大小颜色等等。
搭建效果如下:
在这里插入图片描述
html代码如下:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>作业一</title><link rel="stylesheet" href="../work_css/work1.css">
</head>
<body><div class="nav"><ul><li><a href="#">首页</a></li><li><a href="#">关于我们</a></li><li><a href="#">服务</a></li><li><a href="#">联系我们</a></li></ul></div></body>
</html>

work1.css代码如下:

/* 初始化html、body宽高100%,占满整个窗口 */
html body {width: 100%;height: 100%;margin: 0;padding: 0;
}.nav {/* 设置导航栏的大小和颜色 */width: 100%;height: 50px;background-color: rgba(0,0,0,0.4);/* 导航栏采用Flex布局方式 *//* 采用Flex布局的好处:1.使得代码更加简洁 2.不用考虑宽的设置,会自动占满 */display: flex;
}
.nav ul {/* Flex需要初始化ul标签的宽度 */width: 100%;height: 100%;display: flex;/* 去掉列表点 */list-style: none;/* 取消ul标签默认的内外边距 */margin: 0;padding: 0;
}
.nav ul li {/* 设置 flex-grow 为 1 保证所有的 li 元素都有相等的宽度,而不论其内容的宽度 */flex-grow: 1;height: 100%;/* 对齐文本到中心 */text-align: center;/* 这一行使文字垂直居中 */display: flex; justify-content: center;
}
.nav ul li a {/* 设置字体大小和颜色,并去掉下划线 */font-size: 16px;color: black;text-decoration: none;
}

特点是使用了Flex布局,其余在代码中有注释,代码中有问题或疑惑欢迎交流哦~
接下来需要添加导航栏的响应部分,即鼠标悬停在上面时的效果。
在这里插入图片描述
添加了如图所示的悬停效果,但是由于只有四个按钮所以不是很好看哈哈。
主要修改的是a标签以及添加a:hover
修改后的css代码如下:

.nav ul li a {/* 设置字体大小和颜色,并去掉下划线 */font-size: 18px;color: black;text-decoration: none;display: block;margin-top: 12px;height: 36px;border-bottom: 2px rgba(0,0,0,0.4);
}.nav ul li a:hover {color: white;border-bottom: 2px solid white;
} 

接下来需要解决,“在滚动页面时,导航栏应始终固定在顶部”问题。
固定导航栏只需要添加nav的position属性即可,如

.nav {/*其余代码*/position: fixed;
}

最后完整的导航栏代码如下:

/* 初始化html、body宽高100%,占满整个窗口 */
html body {width: 100%;height: 100%;margin: 0;padding: 0;
}.nav {/* 设置导航栏的大小和颜色 */width: 100%;height: 50px;background-color: rgba(0,0,0,0.4);/* 导航栏采用Flex布局方式 *//* 采用Flex布局的好处:1.使得代码更加简洁 2.不用考虑宽的设置,会自动占满 */display: flex;/* 固定导航栏 */position: fixed;
}
.nav ul {/* Flex需要初始化ul标签的宽度 */width: 100%;height: 100%;display: flex;/* 去掉列表点 */list-style: none;/* 取消ul标签默认的内外边距 */margin: 0;padding: 0;}
.nav ul li {/* 设置 flex-grow 为 1 保证所有的 li 元素都有相等的宽度,而不论其内容的宽度 */flex-grow: 1;height: 100%;/* 对齐文本到中心 */text-align: center;/* 这一行使文字垂直居中 */display: flex;justify-content: center; 
}
.nav ul li a {/* 设置字体大小和颜色,并去掉下划线 */font-size: 18px;color: black;text-decoration: none;display: block;margin-top: 12px;height: 36px;border-bottom: 2px rgba(0,0,0,0.4);
}.nav ul li a:hover {color: white;border-bottom: 2px solid white;
} 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/703020.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

量子计算机接入欧洲最快超算!芬兰加快混合架构算法开发

内容来源&#xff1a;量子前哨&#xff08;ID&#xff1a;Qforepost&#xff09; 文丨浪味仙 排版丨沛贤 深度好文&#xff1a;1900字丨7分钟阅读 摘要&#xff1a;芬兰技术研究中心&#xff08;VTT&#xff09;与 CSC 展开合作&#xff0c;基于量子计算机超算架构进行算法开…

Windows / Linux 查看计算机支持的最大内存

该操作一般用不到&#xff0c;主要用于给计算机扩展内存用。 一、Windows 系统 WMIC 查看 WMIC&#xff08;Windows Management Instrumentation Command-line&#xff09;是一个命令行工具&#xff0c;它提供了访问 WMI &#xff08;Windows Management Instrumentation&…

Cannot read properties of undefined (reading ‘init‘)报错

出现这个报错是印象项目没有引echarts包 npm i echarts 下包 然后在main.js中引入 import echarts from echarts Vue.prototype.$echarts echarts 如果还不行 import * as echarts from echarts; 更改一下引入方式 ok了

np.linalg.norm()

np.linalg.norm()是NumPy中用于计算向量或矩阵的范数的函数。它可以计算不同类型的范数&#xff0c;包括向量的L1范数、L2范数以及矩阵的Frobenius范数等。 基本用法如下, numpy.linalg.norm(x, ordNone, axisNone, keepdimsFalse) x&#xff1a;输入数组&#xff0c;可以是…

Diffie-Hellman密钥交换协议

Diffie-Hellman也就是DH算法&#xff0c;本章我们将简单介绍一下该算法。 什么是DH算法&#xff1f; DH算法是Diffie和Hellman两位作者于1976年提出的一种密钥交换协议。它的主要用途是在非安全网络下通信双方密钥的安全建立&#xff0c;从而使通信双方能够使用这个密钥进行消…

Nginx配置文件conf解释

系列文章目录 文章目录 系列文章目录前言 前言 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站&#xff0c;这篇文章男女通用&#xff0c;看懂了就去分享给你的码吧。 Nginx(“engine x”…

佛山信息学真题 桂城-2021-五年级1.2

一、两位数&#xff08;GC4091&#xff09; GC4091 GC.2021.五年级.01.两位数http://43.139.152.26/d/DH_Trial/p/GC4091 题目描述 小明正在思考一个数学问题&#xff1a;有一个两位数&#xff0c;它的十位数大于等于个位数。现已知它的十位数和个位数之和为a&#xff0c;十位…

上海交大携手阿里巴巴成立人工智能与系统联合实验室

5 月 8 日&#xff0c;上海交通大学电子信息与电气工程学院&#xff08;简称电院&#xff09;与阿里巴巴集团宣布共同成立人工智能与系统联合实验室&#xff08;后称“联合实验室”&#xff09;&#xff0c;并在上海交大闵行校区举行了揭牌仪式。 上海交大电院副院长王贺升教授…

数字化应用标杆 | 又两家成套厂效率翻倍,利用率高达93%以上!

利驰 联能 & 利驰 俊郎 近日&#xff0c;利驰数字科技&#xff08;苏州&#xff09;有限公司&#xff08;简称利驰软件&#xff09;成功与俊郎电气有限公司&#xff08;简称俊郎电气&#xff09;、浙江联能电气有限公司&#xff08;简称联能电气&#xff09;成功确立了数字…

css 步骤条虚线渐变色效果实现

效果如图所示&#xff1a; 思路&#xff1a; 使用元素覆盖的方式实现视觉上虚线的效果 实现代码&#xff1a; html布局 <ul class"details-cont"><li class"details-li" v-for"item in 3" :key"item"><div class&qu…

DBeaver连接数据库

前言 DBeaver是一款免费和开源的数据库管理工具&#xff0c;为开发人员和数据库管理员提供了一个通用的数据库解决方案。以下是DBeaver的主要特点和功能&#xff1a; 跨平台支持&#xff1a;DBeaver支持Windows、Linux、macOS等主流操作系统&#xff0c;用户可以在不同的平台…

香港电讯高效网络,助力新消费品牌抓住拓展香港市场新风口

自今年初香港与内地全面恢复通关&#xff0c;两地同胞跨境消费热潮持续升温。港人“北上”消费掀起风潮的同时&#xff0c;香港市场也成为内地新消费品牌拓展的热门目标。从糕点、茶饮、连锁餐饮到服饰&#xff0c;越来越多内地品牌进驻香港。新消费品牌要想在香港开设门店&…