CSS基础知识汇总

news2024/11/19 7:35:46

目录

  • CSS 基础知识
    • 1. CSS 的基本结构
    • 2. 选择器
    • 3. 常用 CSS 属性
    • 4. CSS 单位
    • 5. CSS 盒模型
  • 总结

学习 CSS(Cascading Style Sheets)是前端开发的重要部分,它用于控制网页的样式和布局。以下是学习 CSS 过程中需要掌握的基本概念、符号和对应的意义。
在这里插入图片描述

CSS 基础知识

1. CSS 的基本结构

CSS 规则由选择器和声明块组成,基本结构如下:

selector {
  property: value;
  /* more properties and values */
}
  • 选择器(selector):指定要应用样式的 HTML 元素。
  • 声明块(declaration block):包含一个或多个声明,每个声明由属性和值组成。

2. 选择器

  • 基础选择器

    • 元素选择器:选择所有指定的 HTML 元素。例如,p { color: red; } 选择所有 <p> 元素。
    • 类选择器:选择所有指定类名的元素,使用 . 表示。例如,.className { color: blue; } 选择所有类名为 className 的元素。
    • ID 选择器:选择具有指定 ID 的元素,使用 # 表示。例如,#idName { color: green; } 选择 ID 为 idName 的元素。
  • 组合选择器

    • 后代选择器:选择某个元素内的所有指定元素,使用空格分隔。例如,div p { color: yellow; } 选择所有在 <div> 内的 <p> 元素。
    • 子选择器:选择某个元素的直接子元素,使用 > 分隔。例如,ul > li { color: purple; } 选择所有 <ul> 的直接子元素 <li>
    • 相邻兄弟选择器:选择紧接在某元素后的指定元素,使用 + 分隔。例如,h1 + p { color: orange; } 选择紧接在 <h1> 后的第一个 <p> 元素。
    • 通用兄弟选择器:选择某元素后面的所有指定元素,使用 ~ 分隔。例如,h1 ~ p { color: pink; } 选择 <h1> 后的所有 <p> 元素。
  • 伪类和伪元素选择器

    • 伪类选择器:选择特定状态的元素。例如,:hover 选择鼠标悬停状态的元素,:first-child 选择父元素的第一个子元素。
    • 伪元素选择器:选择元素的特定部分。例如,::before::after 用于在元素内容的前后插入内容。

3. 常用 CSS 属性

  • 文本样式

    • color:设置文本颜色。
    • font-size:设置文本大小。
    • font-family:设置字体系列。
    • font-weight:设置字体粗细。
    • text-align:设置文本对齐方式。
    • text-decoration:设置文本装饰(如下划线)。
    • line-height:设置行高。
  • 背景样式

    • background-color:设置背景颜色。
    • background-image:设置背景图片。
    • background-repeat:设置背景图片是否重复。
    • background-position:设置背景图片的位置。
    • background-size:设置背景图片的大小。
  • 边框和间距

    • border:设置边框,包括宽度、样式和颜色。
    • margin:设置元素外边距。
    • padding:设置元素内边距。
  • 布局

    • display:设置元素的显示类型(如 blockinlineinline-blockflex)。
    • position:设置元素的定位类型(如 staticrelativeabsolutefixed)。
    • toprightbottomleft:设置定位元素的偏移。
    • z-index:设置元素的堆叠顺序。
  • 尺寸

    • width:设置元素的宽度。
    • height:设置元素的高度。
    • max-width:设置元素的最大宽度。
    • max-height:设置元素的最大高度。
    • min-width:设置元素的最小宽度。
    • min-height:设置元素的最小高度。
  • 灵活盒子布局(Flexbox)

    • display: flex:将元素变为 flex 容器。
    • flex-direction:设置主轴方向(如 rowcolumn)。
    • justify-content:设置主轴上的对齐方式(如 flex-startcenterspace-between)。
    • align-items:设置交叉轴上的对齐方式(如 flex-startcenter)。
    • flex-wrap:设置是否换行(如 nowrapwrap)。
  • 网格布局(Grid)

    • display: grid:将元素变为 grid 容器。
    • grid-template-columns:定义列结构。
    • grid-template-rows:定义行结构。
    • grid-gap:设置网格间距。
  • 过渡与动画

    • transition:设置过渡效果。
    • animation:定义动画,包括名称、持续时间、计时函数等。

4. CSS 单位

  • 绝对单位

    • px(像素):常用的单位,适用于大多数情况。
    • cm(厘米)、mm(毫米):适用于打印媒体。
    • in(英寸)、pt(磅)、pc(派卡):适用于打印媒体。
  • 相对单位

    • %(百分比):相对于父元素的尺寸。
    • em:相对于元素的字体大小。
    • rem:相对于根元素(<html>)的字体大小。
    • vw(视口宽度)、vh(视口高度):相对于视口的百分比。
    • vminvmax:相对于视口较小或较大的那一个百分比。

5. CSS 盒模型

  • 内容区(Content Box):包含实际内容的区域。
  • 内边距(Padding):内容区和边框之间的空间。
  • 边框(Border):包围内容和内边距的边缘。
  • 外边距(Margin):边框和相邻元素之间的空间。

总结

在这里插入图片描述

掌握 CSS 是前端开发的重要环节。通过理解选择器、属性、单位、盒模型以及布局技术,我们就可以创建出具有良好视觉效果和用户体验的网页。

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

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

相关文章

分布式数据库架构:从单实例到分布式,开发人员需及早掌握?

现在互联网应用已经普及,数据量不断增大。对淘宝、美团、百度等互联网业务来说,传统单实例数据库很难支撑其性能和存储的要求,所以分布式架构得到了很大发展。而开发人员、项目经理,一定要认识到数据库技术正在经历一场较大的变革,及早掌握好分布式架构设计,帮助公司从古…

Directory Opus 13.6 可用的apk文件右键菜单脚本

// apk文件的右键经过adb安装的脚本,可以在多个设备中选择function OnClick(clickData) {try {// 检查是否选中了文件if (clickData.func.sourcetab.selected_files.count 0) {DOpus.Output("没有选中任何文件");return;}// 获取选中的文件名var selectedFile clic…

inflight 守恒和带宽资源守恒的有效性

接着昨天的问题&#xff0c;inflight 守恒的模型一定存在稳定点吗&#xff1f;并不是。如果相互抑制强度大于自我抑制强度&#xff0c;系统也会跑飞&#xff1a; 模拟结果如下&#xff1a; 所以一定要记得 a < b。 比对前两个图和后两个图的 a&#xff0c;b 参数关系&am…

[CLIP] Learning Transferable Visual Models From Natural Language Supervision

通过在4亿图像/文本对上训练文字和图片的匹配关系来预训练网络&#xff0c;可以学习到SOTA的图像特征。预训练模型可以用于下游任务的零样本学习 ​​​​​​​ ​​​​​​​ 1、网络结构 1&#xff09;simplified version of ConVIRT 2&#xff09;linear …

Apache OFBiz 路径遍历导致RCE漏洞复现(CVE-2024-36104)

0x01 产品简介 Apache OFBiz是一个电子商务平台,用于构建大中型企业级、跨平台、跨数据库、跨应用服务器的多层、分布式电子商务类应用系统。是美国阿帕奇(Apache)基金会的一套企业资源计划(ERP)系统。该系统提供了一整套基于Java的Web应用程序组件和工具。 0x02 漏洞概…

Allegro X PCB设计小诀窍系列--如何在Allegro X中快速将位号调整到器件中心

背景介绍&#xff1a;我们在进行PCB设计时&#xff0c;为了将位号和元器件对应&#xff0c;从而能够更快速准确的辨别元器件位置&#xff0c;通常需要将位号移动至器件中心。如果由工程师手动完成&#xff0c;不仅工作量大&#xff0c;还极易出错。而通过Allegro X PCB设计工具…

plsql导入excel

1.建临时表&#xff1a;&#xff08;字段对应excel表头&#xff09; create table temp_old_table(atomname nvarchar2(4000), --原子名称koujingname nvarchar2(4000) --供应商名称);2.Plsql–>工具&#xff08;tool&#xff09;–>ODBC导入器&#xff08;ODBC Impo…

SpringBoot+Vue网上超市系统(前后端分离)

技术栈 JavaSpringBootMavenMySQLMyBatisVueShiroElement-UI 系统角色对应功能 用户管理员 系统功能截图

QT 信号和槽 多对一关联示例,多个信号,一个槽函数响应,多个信号源如何绑定一个槽函数

三个顾客 Anderson、Bruce、Castiel 都要订饭&#xff0c;分别对应三个按钮&#xff0c;点击一个按钮&#xff0c;就会弹出给该顾客送饭的消息。注意这个例子只使用一个槽函数&#xff0c;而三个顾客名称是不一样的&#xff0c;弹窗时显示的消息不一样&#xff0c;这需要一些 技…

自然语言处理(NLP)—— 语言检测器

1. 文章概述 1.1 目的 在本篇文章中&#xff0c;我们将构建一个语言检测器&#xff0c;这是一个能够识别文本语言的简单分类器。这是一个能够识别文本是用哪种语言写的程序。想象一下&#xff0c;你给这个程序一段文字&#xff0c;它就能告诉你这是英语、法语还是其他语言。 …

106.网络游戏逆向分析与漏洞攻防-装备系统数据分析-在UI中显示装备与技能信息

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 如果看不懂、不知道现在做的什么&#xff0c;那就跟着做完看效果&#xff0c;代码看不懂是正常的&#xff0c;只要会抄就行&#xff0c;抄着抄着就能懂了 内容…

vue3组件传值---vue组件通过属性,事件和provide,inject进行传值

通过属性传值&#xff08;父传子&#xff09; vue的组件具有props自建属性&#xff08;自定义名称&#xff0c;类似于class&#xff0c;id的属性&#xff09;&#xff0c;通过这个属性&#xff0c;父组件可以向子组件传递参数&#xff0c;从而实现组件之间的信息传递&#xff0…

【深度学习】【机器学习】支持向量机,网络入侵检测,KDD数据集

文章目录 环境加载数据归一化数据训练模型用测试数据集给出评估指标准确率召回率预测某个输入数据随便取一行数据加载训练好的SVM支持向量机模型并预测 全部数据和代码下载 环境 之前介绍过用深度学习做入侵检测&#xff0c;这篇用向量机。 环境Python3.10 requirements.txt…

深度解析:短剧市场的发展趋势

一、 短剧视频的兴起 小程序短剧视频是近年来在社交媒体平台上崭露头角的一种内容形式&#xff0c;其独特的表达方式吸引了大量用户的关注&#xff0c;这种类型的视频通常以小幅度、短时长的剧情为主&#xff0c;具有轻松幽默的风格&#xff0c;适合在碎片化的时间作为娱乐消遣…

OpenFeign --学习笔记

什么是OpenFeign&#xff1f; OpenFeign可以想象成一座连接客户端&#xff08;服务器&#xff09;和服务器之间的桥梁。在微服务架构中&#xff0c;各个服务之间像小岛屿一样分布在网络上&#xff0c;它们需要相互通信才能协同工作。但是&#xff0c;这些岛屿之间并没有现成的…

el-dialog给弹框标题后加图标,鼠标悬停显示详细内容

效果&#xff1a; 代码&#xff1a; <div slot"title" class"el-dialog__title">标题<el-tooltip effect"dark" placement"right"><div slot"content">鼠标悬停显示</div><i class"el-icon…

AI绘画入门教程(非常详细)从零基础入门到精通,看完这一篇就够了

AI绘画的出现&#xff0c;让越来越多的人可以轻松画出美丽的插画作品。在本篇文章中&#xff0c;我们将会使用AI绘画软件&#xff1a;触站&#xff0c;轻松创建属于自己的作品。从零开始学AI绘画&#xff01; 从零开始学AI绘画关键步骤&#xff1a; 第一步&#xff1a;下载软…

MatrixOne→MatrixOS:矩阵起源的创业史即将用“AI Infra”和“AI Platform”书写新章程

在数字化浪潮的推动下&#xff0c;MatrixOne的故事就像一部科技界的创业史诗&#xff0c;它始于一个简单而宏伟的梦想——构建一个能够支撑起新一代数字世界的操作系统。想象一下&#xff0c;在AIGC时代&#xff0c;数据流动如同“血液”&#xff0c;算法运转如同“心跳”&…

<microros> 如何自定义uROS2数据类型

如何自定义数据类型 在microros中&#xff0c;我们可以看到&#xff0c;官方给我们提供了很多数据类型。 如果我们在实际使用的时候&#xff0c;这些类型无法满足我们的传输要求怎么办呢&#xff1f; 官方也提供了自定义数据类型的办法。 参考&#xff1a; https://github…

深度学习的实用性探究:虚幻还是现实?

深度学习的实用性探究&#xff1a;虚幻还是现实&#xff1f; 深度学习作为人工智能领域的一个热点&#xff0c;已经在学术和工业界引起了广泛的关注。尽管深度学习技术显示出惊人的性能和潜力&#xff0c;但有时它们给人的感觉是“虚”的&#xff0c;或许是因为它们的抽象性和…