CSS入门笔记

目录

概述

组成

CSS 语法

常见的使用方式

CSS 优先级

CSS 选择器

1. 基本选择器

2. 属性选择器

3. 伪类选择器

4. 组合选择器

示例 

优先级

边框样式与盒子模型

单个边框

边框轮廓(Outline)

盒子模型

模型介绍

边距设置

布局示例

文本样式

基本属性

文本显示

元素显示与隐藏

文本省略(长文本省略)


概述

CSS(Cascading Style Sheets,层叠样式表)是一种用于描述网页外观和布局的样式表语言。它为 HTML 提供了视觉上的美化工具,能够控制网页中元素的展示方式,包括字体、颜色、布局、间距、边框等。

  • 层叠:CSS 的“层叠”概念意味着样式规则可以以多种方式应用,它们的优先级会按一定的规则叠加生效。样式可以直接在 HTML 元素中定义,可以在页面的 <style> 标签中编写,也可以存储在外部的 CSS 文件中。
  • 样式:CSS 为网页的不同元素赋予样式,帮助开发者定义元素的外观,如字体样式、背景颜色、边距、边框等。

组成

  • 选择器:用来选择需要设置样式的 HTML 元素。比如选择 <p> 标签、选择类名为 header 的元素等。
  • 属性:指代可以设置的样式种类,如字体大小、背景颜色、边框样式等。
  • 值:属性对应的具体样式定义,比如 color 属性的值可以是 red,表示将文本颜色设置为红色。

CSS 语法

CSS 的基本语法如下:

选择器 {属性名: 属性值;属性名: 属性值;
}

示例: 

p {color: red;font-size: 16px;
}

这段代码将所有 <p> 标签的文本颜色设置为红色,并且字体大小设置为 16 像素。

常见的使用方式

行内样式:直接在 HTML 元素中使用 style 属性定义 CSS。

<p style="color: red;">这是一个红色段落。</p>

内部样式表:在 HTML 文档的 <head> 标签中使用 <style> 标签定义样式。

<style>p {color: blue;}
</style>

外部样式表:将 CSS 代码放在单独的 .css 文件中,并通过 <link> 标签引入到 HTML 中。

<link rel="stylesheet" href="styles.css">

外部样式表是推荐的使用方式,因为它使样式与内容分离,提高代码的可维护性。

CSS 优先级

CSS 的优先级规则决定了当多个样式应用于同一元素时,哪个样式将会生效。

优先级遵循以下层叠顺序,数字越大优先级越高:

  1. 浏览器默认样式:每个浏览器都有默认的样式(例如 <h1> 标签的字体通常比 <p> 标签大),但这些样式通常会被用户定义的样式覆盖。
  2. 外部样式表:使用 <link> 引入的外部样式表,通常被优先考虑,但优先级较低于内部和内联样式。
  3. 内部样式表:在 HTML 的 <head> 标签中的 <style> 定义的样式,优先级高于外部样式表。
  4. 内联样式:直接在 HTML 元素中使用 style 属性定义的样式,优先级最高。

CSS 选择器

选择器用于指定哪些 HTML 元素应用特定的样式规则。不同类型的选择器可以根据标签名、类名、ID、属性等条件选择元素。

1. 基本选择器

分类名称符号作用示例
元素选择器标签选择器标签名选择文档中指定的 HTML 标签div { }
类选择器类选择器.选择具有特定类 (class) 的元素.center { }
ID选择器ID 选择器#选择具有特定 ID (id) 的元素,ID 是唯一的#username { }
通用选择器通配符选择器*选择文档中的所有元素* { }

2. 属性选择器

属性选择器基于元素的属性和属性值选择元素。

选择器作用示例
[attr]选择具有指定属性的所有元素[type] { }
[attr=value]选择具有指定属性值的所有元素[type="text"] { }
[attr~=value]选择属性包含空格分隔值的元素[title~="example"] { }
[attr^=value]选择以某值开头的属性[href^="https"] { }
[attr$=value]选择以某值结尾的属性[src$=".jpg"] { }

3. 伪类选择器

伪类选择器用于选择特殊状态下的元素(如鼠标悬停时、选中时等)。

选择器作用示例
:hover选择鼠标悬停时的元素a:hover { }
:first-child选择作为父元素的第一个子元素的元素p:first-child { }
:nth-child(n)选择某个元素的第 n 个子元素li:nth-child(2) { }

4. 组合选择器

组合选择器允许将多个选择器组合在一起,以选择更具体的元素。

选择器名称符号作用示例
分组选择器分组选择器,同时应用相同的样式到多个选择器h1, h2, h3 { }
后代选择器后代选择器空格选择某元素的所有后代元素div p { }
子元素选择器子选择器>选择某元素的直接子元素ul > li { }

示例 

优先级

CSS 选择器的优先级可以用来决定当多个规则冲突时,哪一个会被应用。具体优先级规则如下:

优先级规则:

  1. ID选择器 (#) 的优先级最高。
  2. 类选择器 (.)、属性选择器 ([attr])、以及 伪类选择器 (:hover, :nth-child) 的优先级次之。
  3. 标签选择器(元素选择器)和 伪元素选择器(::before, ::after)的优先级更低。
  4. 通配符选择器 (*),继承的样式,以及 浏览器默认样式 具有最低优先级。

优先级示例:

就近原则

如果两个选择器的优先级相同,则后写的选择器会覆盖之前的选择器样式,这被称为就近原则。

边框样式与盒子模型

单个边框

CSS 边框属性可以为元素设置边框,并允许定制边框的各个部分,如上边框、左边框、下边框和右边框。

单个边框

  • border:同时设置四边的边框。
  • border-top:设置上边框。
  • border-left:设置左边框。
  • border-bottom:设置下边框。
  • border-right:设置右边框。

无边框

  • 当 border 值为 none 时,边框将不显示。
div {width: 200px;height: 200px;border: none;
}

圆角边框

  • 使用 border-radius 属性可以设置盒子的圆角效果。

边框轮廓(Outline)

轮廓属性 outline 在元素边框的外部绘制一条线,用于突出显示元素。轮廓不会影响元素的实际大小或布局。

盒子模型

模型介绍

盒子模型是网页布局的基础,通过控制元素的边距、内边距、边框和内容区来进行布局和调整。元素在页面中被看作一个矩形盒子,这个盒子由以下几个部分组成:

  • element:网页中的元素。
  • padding:内边距,指元素内容与边框之间的空间。
  • border:边框,包围元素的边界线。
  • margin:外边距,元素与其他元素之间的空间。

边距设置

CSS 提供了灵活的方式来设置外边距(margin)和内边距(padding)。这些属性可以单独指定四个方向的边距(上、右、下、左),也可以使用简写形式一次设置多个方向的值。

外边距 (margin)

单独设置四个方向的外边距:

margin-top
margin-right
margin-bottom
margin-left

使用 auto 设置左右外边距,自动居中:

margin: auto;

使用简写方式:

一个值:四个方向相同的外边距。

margin: 10px; /* 所有 4 个外边距均为 10px */

两个值:第一个值应用于上下,第二个值应用于左右。

margin: 10px 5px; /* 上下为 10px,左右为 5px */

三个值:第一个值应用于上,第二个值应用于左右,第三个值应用于下。

margin: 10px 5px 15px; /* 上 10px,左右 5px,下 15px */

四个值:依次应用于上、右、下、左。

margin: 10px 5px 15px 20px; /* 上 10px,右 5px,下 15px,左 20px */

内边距 (padding)

类似于 margin,内边距也可以单独设置四个方向:

padding-top
padding-right
padding-bottom
padding-left

布局示例

文本样式

基本属性

属性名作用属性取值
width设置元素宽度值可以为像素(px)或百分比(%)
height设置元素高度值可以为像素(px)或百分比(%)
color设置文本颜色颜色名称、HEX值、RGB或HSL值,如 red#FF0000rgb(255,0,0)
font-family设置字体样式常用字体有 宋体楷体ArialTimes New Roman
font-size设置字体大小px(像素值,绝对大小)或 em(相对父元素的字体大小)。例如 16px1.5em
text-decoration设置文本装饰underline(下划线)、overline(上划线)、line-through(删除线)、none(无线条)
text-align设置水平对齐方式left(左对齐)、right(右对齐)、center(居中对齐)、justify(两端对齐,使文本行宽相同)
line-height设置行高和行间距通常用 pxem 设置,例如 1.5em 表示行高是字体大小的1.5倍
vertical-align设置垂直对齐方式top(顶端对齐)、bottom(底端对齐)、middle(居中对齐),也可以使用百分比来相对父元素进行对齐
display设置元素显示方式inline(内联元素,无换行)、block(块级元素,独占一行)、inline-block(内联元素,但可以设置宽高)、none(隐藏元素)

文本显示

元素显示与隐藏

显示元素:通过 display 或 visibility 属性控制元素的显示。默认情况下,display 为 block 或 inline,显示元素。

隐藏元素:

  • display: none;:元素完全隐藏且不占据页面空间。
  • visibility: hidden;:元素隐藏,但仍然占据页面空间。

文本省略(长文本省略)

当文本内容超过容器的宽度时,可以使用 text-overflow 和相关的 CSS 属性使文本显示为省略号(...)。常用于单行和多行文本的情况。

单行文本省略:

.single-line {width: 200px;          /* 宽度 */white-space: nowrap;    /* 不换行 */overflow: hidden;       /* 超出部分隐藏 */text-overflow: ellipsis; /* 超出部分显示省略号 */
}

多行文本省略(使用 line-clamp 进行文本截断):

.multi-line {width: 200px;display: -webkit-box;-webkit-line-clamp: 3;   /* 限制显示的行数 */-webkit-box-orient: vertical;overflow: hidden;        /* 超出部分隐藏 */text-overflow: ellipsis; /* 显示省略号 */
}

示例 

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

一个基于VB的期刊信息管理系统

一个基本的期刊信息管理系统的示例&#xff0c;使用 Visual Basic (VB.NET) 编写。这个示例将展示如何创建一个简单的期刊信息管理系统&#xff0c;其中包括添加、查看、编辑和删除期刊的功能。 系统需求 添加期刊&#xff1a;允许用户输入期刊的信息&#xff08;如标题、作者…

如何使用 maxwell 同步到 redis?

文章目录 1、MaxwellListener2、MxwObject1. 使用Maxwell捕获MySQL变更2. 将Maxwell的输出连接到消息系统3. 从消息系统读取数据并同步到Redis注意事项 1、MaxwellListener package com.atguigu.tingshu.album.listener;import com.alibaba.fastjson.JSON; import org.apache.…

文心一言 VS 讯飞星火 VS chatgpt (350)-- 算法导论24.1 1题

一、在图 24-4上运行Bellman-Ford算法&#xff0c;使用结点 z z z作为源结点。在每一遍松弛过程中&#xff0c;以图中相同的次序对每条边进行松弛&#xff0c;给出每遍松弛操作后的 d d d值和 π π π值。然后&#xff0c;把边 ( z , x ) (z,x) (z,x)的权重改为 4 4 4&#xf…

傅里叶变换的基本性质和有关定理

一、傅里叶变换的基本性质 1.1 线性性质 若 则 其中:a,b是常数 函数线性组合的傅里叶变换等于歌函数傅里叶变换的相应组合。 1.2 对称性 若 则 关于傅里叶变换的对称性还有 虚、实、奇、偶函数的傅里叶变换性质: 1.3 迭次傅里叶变换 对f(x,y)连续两次做二维傅里叶变换…

Datawhile 组队学习Tiny-universe Task01

Task01&#xff1a;LLama3模型讲解 仓库链接&#xff1a;GitHub - datawhalechina/tiny-universe: 《大模型白盒子构建指南》&#xff1a;一个全手搓的Tiny-Universe 参考博客&#xff1a;LLaMA的解读与其微调(含LLaMA 2)&#xff1a;Alpaca-LoRA/Vicuna/BELLE/中文LLaMA/姜子…

前端框架对比和选择

​ 大家好&#xff0c;我是程序员小羊&#xff01; 前言&#xff1a; 前端框架选择是前端开发中的关键决策&#xff0c;因为它影响项目的开发效率、维护成本和可扩展性。当前&#xff0c;最流行的前端框架主要包括 React、Vue 和 Angular。它们各有优劣&#xff0c;适用于不同…

msvcp140.dll丢失如何解决?msvcp140.dll丢失的多种解决方法

在计算机使用过程中&#xff0c;我们经常会遇到一些错误提示&#xff0c;其中之一就是“msvcp140.dll丢失”。这个错误通常会导致某些应用程序无法正常运行&#xff0c;给用户带来很大的困扰。那么&#xff0c;当我们遇到msvcp140.dll丢失的情况时&#xff0c;应该如何解决呢&a…

【HTTP】HTTP报文格式和抓包

文章目录 HTTP 是什么HTTP 报文格式抓包工具抓包工具的原理抓包结果请求响应 IP&#xff0c;数据链路层&#xff0c;DNS… 都是理论为主&#xff0c;TCP/UDP 虽然有一些时间&#xff0c;但课堂内容不多 HTTP 理论和实践同样重要&#xff0c;未来作为 web 开发程序猿&#xff0…

机房监控运维工作的全面优化:以监控易一体化运维软件为助力

在当今高度信息化的社会&#xff0c;数据中心的运维工作显得尤为重要。为了确保机房环境的稳定、服务器和存储设备的正常运行、操作系统和数据库的持续高效&#xff0c;以及中间件服务的可靠性&#xff0c;运维团队需要执行一系列精细化的管理和操作。本文将以监控易一体化运维…

扩展------SpringBoot的自动装配机制+自定义一个Starter

SpringBoot的自动装配机制 SpringBoot提供给我们只要将框架的依赖包引入pom文件中&#xff0c;就可以帮助我们自动配置好&#xff0c;我们开箱即用&#xff0c;非常方便&#xff0c;底层原理是如何的呢&#xff1f; 首先自动装配依赖于EnableAutoConfiguration注解。 往下走&a…

PCIe扫盲(九)

系列文章目录 PCIe扫盲&#xff08;一&#xff09; PCIe扫盲&#xff08;二&#xff09; PCIe扫盲&#xff08;三&#xff09; PCIe扫盲&#xff08;四&#xff09; PCIe扫盲&#xff08;五&#xff09; PCIe扫盲&#xff08;六&#xff09; PCIe扫盲&#xff08;七&#xff09…

测试栏杆天线和金属圆管天线的差异

今天用网分测试了大约800mm的拉杆天线和800mm的金属圆管的s11的差异。 拉杆的最粗部分10mm,最细部分6mm。圆管的直径为均匀26mm。 两者的谐振频率在60Mhz左右。&#xff08;这也说明了谐振频率只要由长度决定&#xff09; 拉杆天线的swr 圆管的swr 注&#xff1a;上图因为网…

六个神级AI绘画技巧,让你的作品瞬间高级感爆棚!

大家好&#xff0c;我是Shelly&#xff0c;一个专注于输出AI工具和科技前沿内容的AI应用教练&#xff0c;体验过300款以上的AI应用工具。关注科技及大模型领域对社会的影响10年。关注我一起驾驭AI工具&#xff0c;拥抱AI时代的到来。 在艺术的世界里&#xff0c;AI绘画正成为一…

网络原理(4)——网络层(IP)、数据链路层

1. IP 协议 基本概念&#xff1a; 主机&#xff1a;配有 IP 地址&#xff0c;但是不进行路由控制的设备 路由器&#xff1a;即配有 IP 地址&#xff0c;又能进行路由控制 节点&#xff1a;主机和路由器的统称 IP 协议报头格式 1) 4 位版本&#xff1a;实际上只有两个取值&…

扣子智能体实战-快速生成公众号爆款标题的智能体

文章目录 一&#xff0c;创建一个智能体二&#xff0c;创建工作流1&#xff0c;开始结点增加一个theme变量2&#xff0c;新增一个大模型节点3&#xff0c;新增一个代码结点4&#xff0c;发布工作流5&#xff0c; 工作流概览 三&#xff0c;增加开场白 如果是做公众号&#xff0…

Linux线程基础

&#x1f30e; Linux线程 文章目录&#xff1a; Linux线程 线程概念       线程的理解 再谈地址空间 线程控制       线程等待       线程资源共享       线程退出       线程异常       线程分离       理解线程tid 线程切换 线程…

重修设计模式-设计原则

重修设计模式-设计原则 设计原则 设计原则是软件编码时所遵循的规则&#xff0c;旨在帮助开发者创建出既满足功能需求又易于维护、可扩展且美观的设计&#xff0c;理解设计原则可以提升代码质量、减少错误以及促进团队协作&#xff0c;但对设计原则的理解要灵活&#xff0c;不…

佩戴舒适且适合学生党的蓝牙耳机?分享开放式耳机排行榜前十名

对于追求佩戴舒适的学生党来说&#xff0c;高性价比的开放式耳机是一个不错的选择。因为这类耳机不仅提供了良好的通风性&#xff0c;还减少了长时间佩戴带来的闷热感。而且开放式耳机也通常具有轻巧的设计&#xff0c;能够减轻了耳朵的压力。而且&#xff0c;还需要考虑到学生…

CO82-工單號碼段配置

可以通過CO82查看工單號碼段。 配置工單號碼段&#xff1a; 1、首先配置一個號碼段。 2、將工單類型分配給號碼段。 此時工單類型ZP01號碼段即為41W000000-41W999999 3、可以點擊概覽按鈕&#xff0c;查看概覽。 可以看到不同號碼段下的所有工單類型。 *然後在前台就可以對Z…

怎么测开关电源效率?电源效率标准是多少?

在追求电子产品高性能与低功耗的今天&#xff0c;开关电源的效率成为了衡量其性能的一项重要指标。提高开关电源的效率&#xff0c;对于保障电子设备的稳定性和延长使用寿命具有重要意义。今天将为大家介绍开关电源效率的测试方法以及在不同负载条件下电源的效率标准。 一、开关…