深入探索HTML与CSS:构建网页的基础

深入探索HTML与CSS:构建网页的基础

文章目录

  • 深入探索HTML与CSS:构建网页的基础
    • 一、引言
    • 二、HTML:网页的骨架
      • 1. HTML文档结构
      • 2. HTML常用标签
      • 3. HTML表单
    • 三、CSS:网页的装扮师
      • 1. CSS基本语法
      • 2. CSS选择器
      • 3. CSS盒模型
      • 4. CSS布局
          • 流式布局
          • 浮动布局
          • 定位布局
          • Flexbox布局
          • Grid布局
      • 5. CSS样式继承与层叠
      • 6. CSS代码示例

一、引言

在数字化时代,网页成为了人们获取信息、展示创意和互动交流的重要平台。HTML(HyperText Markup Language)和CSS(Cascading Style Sheets)作为构建网页的两大核心技术,发挥着至关重要的作用。本文将带领大家深入探索HTML和CSS的基础知识,并通过代码示例来详细讲解它们的用法和原理。

二、HTML:网页的骨架

HTML,即超文本标记语言,是构建网页的基础语言。它通过标签(tags)来定义网页的结构和内容。HTML文档由一系列的元素(elements)组成,这些元素通过标签来标识。下面是一个简单的HTML文档示例:

<!DOCTYPE html>  
<html lang="zh-CN">  
<head>  
    <meta charset="UTF-8">  
    <title>我的第一个网页</title>  
</head>  
<body>  
    <h1>欢迎来到我的网页</h1>  
    <p>这是一个简单的HTML示例。</p>  
    <img src="example.jpg" alt="示例图片">  
    <a href="https://www.example.com">点击访问示例网站</a>  
</body>  
</html>

1. HTML文档结构

<!DOCTYPE html>:声明文档类型,告诉浏览器这是一个HTML5文档。
<html>:HTML文档的根元素,包含整个网页的内容。
<head>:包含文档的元信息,如标题、字符编码等。
<title>:定义网页的标题,显示在浏览器的标签页上。
<body>:包含网页的主体内容,如标题、段落、图片、链接等。

2. HTML常用标签

标题标签(<h1><h6>):用于定义标题或子标题,<h1>表示最高级别的标题。
段落标签(<p>):用于定义段落。
图像标签(<img>):用于插入图像,通过src属性指定图像源,alt属性提供替代文本。
链接标签(<a>):用于创建超链接,通过href属性指定链接的目标地址。
列表标签(<ul><ol><li>):用于创建无序列表和有序列表。
表格标签(<table><tr><td>):用于创建表格。

3. HTML表单

HTML表单是网页中用户输入数据的区域,包括文本框、密码框、复选框、单选框、提交按钮等。例如:

<form action="/submit_form" method="post">  
    <label for="fname">姓名:</label><br>  
    <input type="text" id="fname" name="fname"><br>  
    <label for="email">邮箱:</label><br>  
    <input type="email" id="email" name="email"><br>  
    <input type="submit" value="提交">  
</form>

三、CSS:网页的装扮师

CSS,即层叠样式表,用于描述HTML文档的样式和布局。通过CSS,我们可以控制网页中元素的外观和位置,使网页更加美观和易读。

1. CSS基本语法

CSS的基本语法由选择器和声明块组成。选择器用于指定要应用样式的HTML元素,声明块则包含一条或多条样式声明,每条声明由一个属性和一个值组成。例如:

/* 选择器 { 属性: 值; } */  
p {  
    color: red;  
    font-size: 16px;  
}

上面的CSS代码表示将所有p标签中的文本颜色设置为红色,字体大小设置为16像素。

2. CSS选择器

元素选择器:根据HTML元素的名称来选择元素,如p、div等。
类选择器:根据HTML元素的class属性来选择元素,如.classname。
ID选择器:根据HTML元素的id属性来选择元素,如#idname。
属性选择器:根据HTML元素的属性来选择元素,如[attribute=value]。
伪类选择器:用于选择HTML元素的特定状态,如:hover(鼠标悬停时)、:active(元素被激活时)等。

3. CSS盒模型

CSS盒模型是网页布局的基础。每个HTML元素都可以看作是由内容(content)、内边距(padding)、边框(border)和外边距(margin)组成的矩形盒子。通过调整这些属性的值,我们可以控制元素的外观和位置。

4. CSS布局

CSS提供了多种布局方式,包括流式布局(Flow Layout)、浮动布局(Floats)、定位布局(Positioning)、Flexbox布局和Grid布局等。每种布局方式都有其特点和适用场景。

流式布局

流式布局是CSS默认的布局方式,元素按照其在HTML中的顺序依次排列。在流式布局中,块级元素从上到下垂直排列,行内元素从左到右水平排列。

浮动布局

浮动布局通过float属性实现,可以使元素向左或向右浮动,从而脱离文档流。浮动布局常用于实现文字环绕图片的效果。但需要注意的是,浮动元素会脱离文档流,可能会影响后续元素的布局。

定位布局

定位布局通过position属性实现,可以将元素从文档流中完全移除,并相对于其正常位置进行定位。position属性有四个值可选:static(默认值,无特殊定位)、relative(相对于其正常位置进行定位)、absolute(相对于最近的已定位祖先元素进行定位,如果没有则相对于初始包含块)、fixed(相对于浏览器窗口进行定位)。

Flexbox布局

Flexbox布局(弹性盒子布局)是一种更加灵活和强大的布局方式,可以轻松地实现元素的水平和垂直居中、等宽高、自动填充空白等效果。Flexbox布局由容器(flex container)和项目(flex item)组成,通过一系列属性来控制项目的排列、对齐和大小。

Grid布局

Grid布局(网格布局)是CSS3新增的一种二维布局系统,可以同时处理行和列。它可以将页面划分为一个个的网格,然后将元素放置在这些网格中。Grid布局适用于需要同时处理行和列的复杂布局场景。

5. CSS样式继承与层叠

在CSS中,样式可以继承。子元素会继承父元素的某些样式属性,如字体、颜色等。同时,CSS也支持样式的层叠,即多个样式应用于同一个元素时,会根据一定的优先级规则来决定最终应用的样式。这些规则包括优先级计算、继承性、特殊性(specificity)等。

6. CSS代码示例

下面是一个使用Flexbox布局和CSS样式实现的示例代码:

<!DOCTYPE html>  
<html lang="zh-CN">  
<head>  
    <meta charset="UTF-8">  
    <title>Flexbox布局示例</title>  
    <style>  
        .container {  
            display: flex;  
            justify-content: center; /* 水平居中 */  
            align-items: center; /* 垂直居中 */  
            height: 300px; /* 容器高度 */  
            border: 1px solid #ccc; /* 边框 */  
            padding: 20px; /* 内边距 */  
        }  
        .box {  
            width: 200px; /* 盒子宽度 */  
            height: 100px; /* 盒子高度 */  
            background-color: #f00; /* 背景色 */  
            color: #fff; /* 文字颜色 */  
            display: flex; /* 盒子内部也使用Flexbox布局 */  
            justify-content: center; /* 水平居中 */  
            align-items: center; /* 垂直居中 */  
        }  
    </style>  
</head>  
<body>  
    <div class="container">  
        <div class="box">我是一个Flexbox布局的盒子</div>  
    </div>  
</body>  
</html>

在上面的示例中,.container容器使用了Flexbox布局来实现内部元素的水平和垂直居中。.box盒子设置了宽度、高度、背景色和文字颜色等样式属性,并使用Flexbox布局来实现盒子内部内容的居中显示。

  1. 总结
    HTML和CSS是构建网页的基础技术。HTML定义了网页的结构和内容,而CSS则负责描述这些内容的样式和布局。通过深入学习HTML和CSS的知识,并结合实际项目进行实践,我们可以创建出美观、易读、符合标准的网页。同时,随着前端技术的不断发展,我们还需要关注新的技术趋势和工具,不断提升自己的技能和水平。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

UNI-APP_拨打电话权限如何去掉,访问文件权限关闭

uniapp上架过程中一直提示&#xff1a;允许“app名”拨打电话和管理通话吗&#xff1f; uniapp配置文件&#xff1a;manifest.json “permissionPhoneState” : {“request” : “none”//拨打电话权限关闭 }, “permissionExternalStorage” : {“request” : “none”//访…

vue 前端读取Excel文件并解析

前端读取Excel文件并解析 前端如何解释Excel呢 平时项目中对于Excel的导入解析是很常见的功能&#xff0c;一般都是放在后端执行&#xff1b;但是也有特殊的情况&#xff0c;偶尔也有要求说前端执行解析&#xff0c;判空&#xff0c;校验等&#xff0c;最后组装成后端接口想要的…

JAVA前端快速入门基础_javascript入门(03)

写在前面:本文用于快速学会简易的JS&#xff0c;仅做扫盲和参考作用 本章节主要介绍JS的事件监听 1.什么是事件监听 事件:是指发生在HTML端的事件&#xff0c;主要指以下几种。 1.按钮被点击 2.鼠标移动到元素上 3.按到了键盘 事件监听:当触发了事件时&#xff0c;JS会执行相…

ECharts在网页中添加可视化图标-在网页中添加交互图表+option模块案列详解

一、引言 ECharts 是一个使用 JavaScript 编写的开源可视化库&#xff0c;它可以在浏览器中生成交互式的图表。无论是折线图、柱状图、散点图还是饼图&#xff0c;ECharts 都能轻松应对。本文将带领大家了解如何在网页中添加 ECharts 可视化图标。 本章可以直接跳到第五点完整…

Flask简介

Flask简介 安装概述使用PyCharm创建一个Flask程序 Flask程序的基本结构初始化路由和视图函数启动服务器请求-响应循环 安装 概述 Flask算是小型框架&#xff0c;小到可以称为“微框架”。Flask 非常小&#xff0c;因此你一旦能够熟练使用它&#xff0c;很可能就能读懂它所有的…

Copilot Workspace是GitHub对人工智能驱动的软件工程的诠释

软件开发的未来是人工智能驱动的集成开发环境吗&#xff1f;至少GitHub 是这样想的。 在今年初秋于旧金山举行的 GitHub Universe 年度大会之前&#xff0c;GitHub 发布了 Copilot Workspace&#xff0c;这是一种开发环境&#xff0c;利用 GitHub 所称的 “Copilot 驱动的代理…

OneFlow新概念清单,AI深度学习的革命性突破(AI写作)

首先&#xff0c;这篇文章是基于笔尖AI写作进行文章创作的&#xff0c;喜欢的宝子&#xff0c;也可以去体验下&#xff0c;解放双手&#xff0c;上班直接摸鱼~ 按照惯例&#xff0c;先介绍下这款笔尖AI写作&#xff0c;宝子也可以直接下滑跳过看正文~ 笔尖Ai写作&#xff1a;…

kotlinDSL控制的安卓项目导入已存在的模块后sync报错

原因很明显&#xff0c;但是我还找了好久 因为在import时并没有选择groove还是kotlin控制&#xff0c; 所以默认为groovy控制的&#xff0c;然而主项目是由kotlin dsl控制的grale行为。 原因清楚之后&#xff0c;就可以去检查一下&#xff0c;项目里是否包含了settings.gradle和…

基于EBAZ4205矿板的图像处理:03使用VIO调试输出HDMI视频图像

基于EBAZ4205矿板的图像处理&#xff1a;03使用VIO调试输出HDMI视频图像 在zynq调试时VIO是真的方便&#xff0c;特此写一篇博客记录一下 先看效果 项目简介 下面是我的BD设计&#xff0c;vtc用于生成时序&#xff0c;注意&#xff0c;2021.2的vivado的vtcIP是v6.2版本&…

动手学深度学习——softmax分类

1. 分类问题 回归与分类的区别&#xff1a; 回归可以用于预测多少的问题&#xff0c; 比如"预测房屋被售出价格"&#xff0c;它是个单值输出。softmax可以用来预测分类问题&#xff0c;例如"某个图片中是猫、鸡还是狗&#xff1f;"&#xff0c;这是一个多…

用Docker 创建并运行一个MySQL容器

可以在DockerHub官网上荡:mysql - Official Image | Docker Hub 指令是:docker pull mysql; 因为文件比较大可能时间比较长&#xff0c;我是跟着黑马的课走的 课程提供的有文件&#xff0c;我就用已有的资源了。 在tmp目录里放入mysql.tar包 然后cd进去 输入指令:docker lo…

java技术栈快速复习05_基础运维(linux,git)

Linux知识总览 linux可以简单的理解成和window一样的操作系统。 Linux和Windows区别 Linux是严格区分大小写的&#xff1b;Linux中一切皆是文件&#xff1b;Linux中文件是没有后缀的&#xff0c;但是他有一些约定俗成的后缀&#xff1b;Windows下的软件一般是无法直接运行的Li…

管理能力学习笔记八:Will-Skill矩阵“盘“团队

如何把握带教中的“度”&#xff0c;才能在把事情做好的基础上&#xff0c;又能使员工获得成长呢&#xff1f; 需要做到 合理授权 & 适当辅导 如何做到&#xff1f; 通过使用 意愿-技能矩阵(Will-Skill Matrix) 辨别不同带教方法的适用情形&#xff0c;"盘"…

【Vue 2.x】学习vue之一基础部分

文章目录 Vue 一基础部分第一章1、git两个分支主分支子分支 使用方法方式1&#xff1a;采用命令的方式操作分支方式2&#xff1a;在idea中使用git的分支 向git远程仓库提交时忽略文件使用git时的一些冲突注意事项 2、Vue问题1&#xff1a;什么是Vue&#xff1f;问题2&#xff1…

网站升级提示:我用react+go重构了网站并记录了部署项目简要步骤

先贴出来地址&#xff0c;这是我网站的地址易查网 可能有细心的小伙伴们已经看到了&#xff0c;原来我的网站是这样式的 妥妥的phph5 改造 前端react框架 前段时间学习了react&#xff0c;正愁无处练手&#xff0c;就有人说我的网站很low,我感觉这正是一个好的机会&#xff…

纯血鸿蒙APP实战开发——发布图片评论

介绍 本示例将通过发布图片评论场景&#xff0c;介绍如何使用startAbilityForResult接口拉起相机拍照&#xff0c;并获取相机返回的数据。 效果图预览 使用说明 通过startAbilityForResult接口拉起相机&#xff0c;拍照后获取图片地址。 实现思路 创建CommentData类&#…

翻译: 什么是ChatGPT 通过图形化的方式来理解 Transformer 架构 深度学习二

在本章中,我们将深入探讨 网络的开始和 结束阶段发生的情况, 我将花大量时间回顾一些重要的背景知识,这些知识是熟悉Transformer的机器学习工程师的基础知识。 如果你已经熟悉背景知识,迫不及待地想了解更多,你可以跳到下一节,重点将放在Transformer的核心部分——注意…

nacos(docker部署)+springboot集成

文章目录 说明零nacos容器部署初始化配置高级配置部分访问权限控制命名空间设置新建配置文件 springboot配置nacos添加依赖编写测试controller 说明 nacos容器部署采用1Panel运维面板&#xff0c;进行部署操作&#xff0c;简化操作注意提前安装好1Panel和配置完成docker镜像加…

深入剖析Tomcat(五) 剖析Servlet容器并实现一个简易Context与Wrapper容器

上一章介绍了Tomcat的默认连接器&#xff0c;后续程序都会使用默认连接器。前面有讲过Catalina容器的两大块内容就是连接器与Servlet容器。不同于第二章的自定义丐版Servlet容器&#xff0c;这一章就来探讨下Catalina中的真正的Servlet容器究竟长啥样。 四种容器 在Catalina中…

Unity涂鸦纹理实现

文章目录 前言实现过程UV坐标和UI坐标对齐修改像素代码 前言 心血来潮实现下场景中提供一张纹理进行涂鸦的功能。 最终实现效果: 实现过程 UV坐标和UI坐标对齐 这里的纹理使用了UGUI的Canvas进行显示&#xff0c;所以这里使用一张RawImage。 因为Unity的视口坐标是以左下角…
最新文章