前端知识笔记(三)———CSS核心功能手册:从熟悉到精通

参考HTML代码

<!DOCTYPE html>
<html lang="zh-CN"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>example</title><link rel="stylesheet" href="./index.css"><script src="./index.js"></script>
</head>
<body><div><h1>1. CSS</h1><p class="box">CSS(Cascading Style Sheets,层叠样式表)是用于控制HTML元素在网页上如何显示的一种标记语言。它允许开发者为网页创建样式,包括布局、颜色、字体和响应式设计等。通过CSS,可以将设计和内容分离,使得网页更易于维护和访问。CSS(Cascading Style Sheets,层叠样式表)是用于控制HTML元素在网页上如何显示的一种标记语言。它允许开发者为网页创建样式,包括布局、颜色、字体和响应式设计等。通过CSS,可以将设计和内容分离,使得网页更易于维护和访问。CSS(Cascading Style Sheets,层叠样式表)是用于控制HTML元素在网页上如何显示的一种标记语言。它允许开发者为网页创建样式,包括布局、颜色、字体和响应式设计等。通过CSS,可以将设计和内容分离,使得网页更易于维护和访问。</p><span>测试span</span></div><div><h1>2. CSS</h1><p>CCSS(Cascading Style Sheets,层叠样式表)是用于控制HTML元素在网页上如何显示的一种标记语言。它允许开发者为网页创建样式,包括布局、颜色、字体和响应式设计等。通过CSS,可以将设计和内容分离,使得网页更易于维护和访问。CSS(Cascading Style Sheets,层叠样式表)是用于控制HTML元素在网页上如何显示的一种标记语言。它允许开发者为网页创建样式,包括布局、颜色、字体和响应式设计等。通过CSS,可以将设计和内容分离,使得网页更易于维护和访问。CSS(Cascading Style Sheets,层叠样式表)是用于控制HTML元素在网页上如何显示的一种标记语言。它允许开发者为网页创建样式,包括布局、颜色、字体和响应式设计等。通过CSS,可以将设计和内容分离,使得网页更易于维护和访问。</p></div><div><h1>3. CSS</h1><p>CSS(Cascading Style Sheets,层叠样式表)是用于控制HTML元素在网页上如何显示的一种标记语言。它允许开发者为网页创建样式,包括布局、颜色、字体和响应式设计等。通过CSS,可以将设计和内容分离,使得网页更易于维护和访问。CSS(Cascading Style Sheets,层叠样式表)是用于控制HTML元素在网页上如何显示的一种标记语言。它允许开发者为网页创建样式,包括布局、颜色、字体和响应式设计等。通过CSS,可以将设计和内容分离,使得网页更易于维护和访问。CSS(Cascading Style Sheets,层叠样式表)是用于控制HTML元素在网页上如何显示的一种标记语言。它允许开发者为网页创建样式,包括布局、颜色、字体和响应式设计等。通过CSS,可以将设计和内容分离,使得网页更易于维护和访问。</p></div><div><h1>4. CSS</h1><p>CSS(Cascading Style Sheets,层叠样式表)是用于控制HTML元素在网页上如何显示的一种标记语言。它允许开发者为网页创建样式,包括布局、颜色、字体和响应式设计等。通过CSS,可以将设计和内容分离,使得网页更易于维护和访问。CSS(Cascading Style Sheets,层叠样式表)是用于控制HTML元素在网页上如何显示的一种标记语言。它允许开发者为网页创建样式,包括布局、颜色、字体和响应式设计等。通过CSS,可以将设计和内容分离,使得网页更易于维护和访问。CSS(Cascading Style Sheets,层叠样式表)是用于控制HTML元素在网页上如何显示的一种标记语言。它允许开发者为网页创建样式,包括布局、颜色、字体和响应式设计等。通过CSS,可以将设计和内容分离,使得网页更易于维护和访问。</p></div>
</body>
</html>

尺寸操作
设置元素尺寸
通常用在块级元素内,width和height属性是用来设置元素的宽度和高度的。这些属性定义了元素的尺寸,即宽度(水平方向)和高度(垂直方向)的大小。

默认情况下,浏览器会让元素自动适应浏览器的尺寸和屏幕尺寸,但是你可以使用这两个参数去设置它的具体数值。

width:

width属性用于设置元素的宽度。在你的代码中,它被设置为500px,意味着该元素的宽度是500像素。
示例:
 

.box {width: 500px; /* 设置元素的宽度为500像素 */
}

height:

height属性用于设置元素的高度。在你的代码中,它被设置为280px,意味着该元素的高度是280像素。
示例:

.box {height: 280px; /* 设置元素的高度为280像素 */
}


这些属性允许你明确地控制元素的大小,以适应你的设计需求。在CSS中,你可以使用不同的单位来指定宽度和高度,例如像素(px)、百分比(%)、em单位、rem单位等。像素是固定的尺寸单位,而百分比、em和rem则是相对的尺寸单位,它们的大小是相对于其他元素或屏幕尺寸而定的。

border:

此属性设置元素的边框样式。
示例

.box {border: 3px dotted grey;
}


3px是边框宽度。
dotted表示边框是点状的。
grey是边框颜色。
border-radius:

此属性设置元素边框的圆角半径,使得边框拐角处呈现为圆角,而非默认的直角。值会是圆角的半径。

示例

.box {border-radius: 8px;
}


内边距
内边距(Padding): 内边距是**元素边框与元素内容之间的空间**。它是元素内部的空白区域,用于创建元素内容和元素边框之间的缓冲空间。在CSS中,内边距通过padding属性来设置。

属性:
padding-top: 设置元素的上内边距。
padding-right: 设置元素的右内边距。
padding-bottom: 设置元素的下内边距。
padding-left: 设置元素的左内边距。
padding: 同时设置元素的上、右、下、左内边距。
示例代码:
 

/* 单独设置内边距 */
.element {padding-top: 10px;padding-right: 20px;padding-bottom: 10px;padding-left: 20px;
}/* 使用一个值来设置所有的内边距 */
.element {padding: 10px;
}/* 使用两个值来设置内边距:第一个值为上下内边距,第二个值为左右内边距 */
.element {padding: 10px 20px;
}


 
/* 使用四个值来分别设置上、右、下、左内边距 */

.element {padding: 10px 20px 30px 40px;
}

外边距
外边距(Margin): 外边距是元素边框外侧到相邻元素边框的空间。它是元素周围的空白区域,用于在元素之间创建空间,以保持页面的清晰和组织良好的布局。在CSS中,外边距通过margin属性来设置。

属性:

margin-top: 设置元素的上外边距。
margin-right: 设置元素的右外边距。值设置为auto的时候可以实现元素垂直居中显示。
margin-bottom: 设置元素的下外边距。
margin-left: 设置元素的左外边距。值设置为auto的时候可以实现元素垂直居中显示。
margin: 同时设置元素的上、右、下、左外边距。设置为0 auto可以实现垂直居中显示
示例代码:
 

/* 单独设置外边距 */

.element {margin-top: 10px;margin-right: 20px;margin-bottom: 10px;margin-left: 20px;
}


 
/* 使用一个值来设置所有的外边距 */

.element {margin: 10px;
}


 
/* 使用两个值来设置外边距:第一个值为上下外边距,第二个值为左右外边距 */

.element {margin: 10px 20px;
}


 
/* 使用四个值来分别设置上、右、下、左外边距 */

.element {margin: 10px 20px 30px 40px;
}

特殊处理:%百分比布局

width: 100%的意义:
当你设置一个元素的width属性为100%时,你是在告诉浏览器将该元素的宽度设置为其父元素的宽度。这意味着,元素会尽可能地扩展以填充其父元素的水平空间。

.element {width: 100%;
}


与父容器的宽度计算:
在默认情况下,一个元素的宽度是由其内容区的宽度、内边距、边框和外边距组成的。当你设置width: 100%时,你只是设置了元素内容区的宽度等于父元素的宽度,而不是整个元素(包括内边距和边框)的宽度

可能出现溢出屏幕的情况:
如果元素具有内边距或边框,那么即使设置了width: 100%,元素的总宽度也会超过其父元素的宽度,可能导致元素溢出其父元素或溢出屏幕。

.element {width: 100%;padding: 10px;border: 5px solid black;
}


解决方法 (box-sizing: border-box;):
box-sizing属性允许你更改浏览器计算元素宽度和高度的方式。通过设置box-sizing: border-box;,你可以告诉浏览器包括内边距和边框在内,但不包括外边距在内,来计算元素的宽度和高度。

.element {width: 100%;padding: 10px;border: 5px solid black;box-sizing: border-box;
}


这样,即使有内边距和边框,元素的总宽度也会与其父元素的宽度相匹配,防止溢出。

为什么这样能解决:
box-sizing: border-box;是因为它改变了浏览器计算元素宽度的方式。在这种模式下,元素的width和height属性包括了内边距和边框,而不仅仅是内容区域。这意味着,即使元素有内边距和边框,其宽度也会保持为100%,与父元素的宽度相匹配,从而防止了溢出的问题。

设置默认布局边距
*{ padding: 0; margin: 0;} 是一种CSS重置(CSS Reset)的简单形式。让我们逐一解释:

通配符 *:
通配符 * 是一个全局选择器,它匹配页面上的所有元素。

padding: 0; 和 margin: 0;:
这两条样式规则分别将所有元素的内边距(padding)和外边距(margin)设置为0。

* {padding: 0;margin: 0;
}


用途和使用场景:
消除浏览器默认样式:
不同浏览器有不同的默认样式。例如,某些浏览器可能会为<body>、<h1>、<p>等元素提供默认的margin和padding值。通过使用* { padding: 0; margin: 0; },你可以重置所有元素的margin和padding值,确保在不同浏览器中的一致性。

创建清晰的布局:
在开始创建网站布局之前重置margin和padding值是一个好习惯,我们可以放在css布局里的首行。这样做可以确保你的布局不会受到未预期的空间影响,使布局过程更为清晰和可预测。

减少样式冲突:
在大型项目或使用第三方库时,重置margin和padding值可以帮助减少样式冲突,使样式更容易管理和维护。

背景设置
在CSS中,背景属性用于为元素设置背景内容。你可以设置颜色、图像、重复、位置和滚动等属性来配置背景。以下是背景属性及其用法的概述:

背景颜色 (background-color):
设置元素的背景颜色。

.element {background-color: #ff0000; /* 红色 */
}


背景图像 (background-image):
设置元素的背景图像。

.element {background-image: url('background.jpg');
}


这只是部分
 

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

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

相关文章

指针 注意事项

指针变量的本质是用来放地址&#xff0c;而一般的变量是放数值的。 1、指针的定义&#xff08;两种形式&#xff09; ①int x3; int *p&x ②int x; int *p&#xff1b; x3&#xff1b;p&x int*p中 *p和p的差别&#xff1a;简单说*p是数值&#xff0c;p是地址&a…

Linux 系统上配置 SSH 密钥

1. 生成 SSH 密钥 打开终端&#xff0c;运行以下命令来生成 SSH 密钥&#xff1a; ssh-keygen -t rsa -b 4096 -C "wqzbxhexample.com" 替换 "wqzbxhexample.com" 为你在 GitHub 注册时使用的邮箱地址。 2. 添加 SSH 密钥到 SSH 代理 运行以下命令来启…

ROS gazebo 机器人仿真,环境与robot建模,添加相机 lidar,控制robot运动

b站上有一个非常好的ros教程234仿真之URDF_link标签简介-机器人系统仿真_哔哩哔哩_bilibili&#xff0c;推荐去看原视频。 视频教程的相关文档见&#xff1a;6.7.1 机器人运动控制以及里程计信息显示 Autolabor-ROS机器人入门课程《ROS理论与实践》零基础教程 本文对视频教程…

java物联网协议解析插件,java iot对接解析框架.java物联网架构的设计思路

一般来说&#xff0c;物联网开发则hi对硬件设备进行信息采集&#xff0c;所以建议技术栈如下&#xff1a; 物联网开发技术栈一般如下&#xff1a; nettyspringbootrocketmqredismagic-byte 其中netty用于tcp和数据接入 rockemqt用于消息临时储存中转&#xff0c; springboot就…

【论文精读】REACT: SYNERGIZING REASONING AND ACTING IN LANGUAGE MODELS

REACT: SYNERGIZING REASONING AND ACTING IN LANGUAGE MODELS 前言ABSTRACT1 INTRODUCTION2 REACT: SYNERGIZING REASONING ACTING3 KNOWLEDGE-INTENSIVE REASONING TASKS3.1 SETUP3.2 METHODS3.3 RESULTS AND OBSERVATIONS 4 DECISION MAKING TASKS5 RELATED WORK6 CONCLUSI…

phpstudy搭建WordPress教程

一、phpstudy新建配置WordPress 打开phpstudy&#xff0c;启动Apache&#xff08;或者Nginx&#xff09;和MySQL服务 来到数据库部分&#xff0c;点击[创建数据库]&#xff0c;填写新建数据库的名称&#xff0c;用户名以及密码&#xff0c;完成后点击确认 来到网站部分&#x…

Course2-Week4-决策树

Course2-Week4-决策树 文章目录 Course2-Week4-决策树1. 决策树的直观理解2. 构建单个决策树2.1 熵和信息增益2.2 构建决策树——二元输入特征2.3 构建决策树——多元输入特征2.4 构建决策树——连续的输入特征2.5 构建回归树——连续的输出结果(选修)2.6 代码实现-递归构建单个…

解决 php 连接mysql数据库时报错:Fatal error: Class ‘mysqli’ not found in问题

在使用php对mysql进行连接的过程中&#xff0c;出现了Fatal error: Uncaught Error: Class "mysqli" not found in的问题 解决方案 这个错误通常表示您的PHP代码中缺少MySQL扩展或者没有启用MySQL扩展。 我们首先确认一下PHP环境中已经安装了MySQL扩展。检查一下自己…

Redis如何做内存优化?

Redis如何做内存优化&#xff1f; 1、缩短键值的长度 缩短值的长度才是关键&#xff0c;如果值是一个大的业务对象&#xff0c;可以将对象序列化成二进制数组&#xff1b; 首先应该在业务上进行精简&#xff0c;去掉不必要的属性&#xff0c;避免存储一些没用的数据&#xff1…

rust详解

前言 rust 学习曲线非常陡峭&#xff0c;但是基本语法也还算挺好理解&#xff0c;自动内存管理有点类似智能指针&#xff0c;基本看一下语法入门就可以大概理解&#xff0c;但是唯独宏很难理解&#xff0c;语法非常晦涩。但是功能非常强大。声明宏类似于c语言的宏处理&#xf…

【淘宝网消费类电子产品销售数据可视化】

淘宝网消费类电子产品销售数据可视化 引言数据爬取与处理数据可视化系统功能1. 总数据量分析2. 店铺总数据3. 店铺销售额排名4. 不同电子商品销售价格5. 单个商品价格排名6. 不同省份平均销量7. 不同地区的平均销售额8. 省份数量9. 每个省份有用的平均个数 创新点结语 引言 随…

Linux 中 find 查找

目录 1.普通查询 2.按照文件大小查找 3.忽略文件字母大小写查询 4.根据修改时间查找 5. 取反 &#xff01; 6.根据用户查询 7.对查找出来的内容进行操作 1.普通查询 find 路径 -name "文件名" 如查看 etc 目录下的passwd 的文件 find /etc -name "passwd&quo…

【周报2023.12.09】

周报2023.12.09 本周开展工作下周工作计划 本周开展工作 本周开展的工作的话一共是一下几点&#xff1a; 这三点的话是紧密相连的 逻辑这边需要考虑的东西很多 点击生成照片&#xff0c;然后获取生成照片的状态点击生成照片&#xff0c;然后获取生成照片的时间&#xff0c;并…

kettle完成mysql表与表之间的更新和插入

版本&#xff1a;20231209 kettle完成数据库表与表之间的转换非常的简单&#xff0c;只需要在输入模块选择&#xff1a;输入表&#xff1b;在输出模块选择&#xff1a;插入和更新表模块 实例展示&#xff1a;将表stu1的数据同步到stu2&#xff0c;并覆盖掉stu2原本的数据。 cr…

嵌入式学习---ARM时钟体系

目录 时钟相关概念时钟脉冲时钟频率时钟的作用时钟信号的生成 S3C2440的时钟体系主时钟晶振两个PLL 时钟启动流程相关的寄存器 时钟相关概念 时钟脉冲 按一定电压幅度&#xff0c;一定时间间隔连续发出的脉冲信号。它是一个周期性的信号&#xff0c;每个周期内包含一个上升沿…

ConvNeXt V2: Co-designing and Scaling ConvNets with Masked Autoencoders

1.关于稀疏卷积的解释&#xff1a;https://zhuanlan.zhihu.com/p/382365889 2. 答案&#xff1a; 在深度学习领域&#xff0c;尤其是计算机视觉任务中&#xff0c;遮蔽图像建模&#xff08;Masked Image Modeling, MIM&#xff09;是一种自监督学习策略&#xff0c;其基本思想…

向日葵远程控制鼠标异常的问题

​ 在通过向日葵进行远程控制的时候&#xff0c;可能会遇到鼠标位置异常的问题。此时&#xff0c;不管怎么移动鼠标&#xff0c;都会停留在屏幕最上方&#xff0c;而无法点击到正确的位置。如图&#xff1a; 此时&#xff0c;如果启用了“被控端鼠标”功能&#xff0c;可以正…

【Docker】swarm stack部署多service应用

前面我们已经学习过了Docker Compose&#xff0c;它可以用来进行一个完整的应用程序相互依赖的多个容器的编排的&#xff0c;但是缺点是只能在单机模式使用&#xff0c;不能在分布式多机器上使用&#xff1b;前面我们也学习了Docker swarm&#xff0c;它可以将单个服务部署为多…

基于EIoT能源物联网的智能照明系统应用改造-安科瑞 蒋静

【摘要】&#xff1a;随着物联网技术的发展&#xff0c;许多场所针对照明合理应用物联网照明系统&#xff0c;照明作为工厂的重要能耗之一&#xff0c;工厂的照明智能化控制&#xff0c;如何优化控制、提高能源的利用率&#xff0c;达到节约能源的目的。将互联网的技术应用到工…

【PHP】学习笔记一:数组及JSON

目录 一、初始化创建数组&#xff1a; 1. 简单数组&#xff1a; 2. 索引号是字符串数组&#xff08;对象数组&#xff09;&#xff1a; 3. 数组中增加一个元素&#xff1a; 4. 对象数组转JSON字符串 5. JSON字符串转数组 一、初始化创建数组&#xff1a; 1. 简单数组&am…