CSS的基础语法和常见的语法简单归纳

CSS

CSS 是层叠样式表(Cascading Style Sheets)的缩写。它是一种用来控制网页样式和布局的标记语言。通过 CSS,可以定义网页中的元素(如文字、图像、链接等)的外观和排版方式,包括字体、颜色、大小、间距、边框等。CSS 的设计目标是将内容和样式分离,使得网页的结构和表现分离开来,使得修改样式不需要修改 HTML 结构,这样可以提高网页的灵活性和可维护性。

CSS的常见语法

  1. 选择器,属性和值
/* 选择器 */
h1 {/* 属性: 值 */color: blue;font-size: 24px;font-family: Arial, sans-serif;
}p {color: green;font-size: 16px;line-height: 1.5;
}

h1 和 p 是选择器,它们指定了要应用样式的 HTML 元素类型。
在大括号 {} 内部,列出了一系列的属性-值对,每个属性定义了要应用的样式特性,值则指定了该特性的具体取值。
在这个例子中,color 属性指定了文本颜色,font-size 指定了字体大小,font-family 指定了字体系列,line-height 指定了行高。
CSS 的规则是通过选择器选择 HTML 元素,并应用这些元素的样式。这种选择器可以基于元素类型、类名、ID 等来进行。

  1. 类选择器(Class Selector)通过类名选择元素。
/* CSS */
.button {background-color: blue;color: white;padding: 10px 20px;
}/* HTML */
<button class="button">Click Me</button>
  1. ID 选择器(ID Selector):通过元素的 ID 来选择元素。
/* CSS */
#header {font-size: 24px;color: red;
}/* HTML */
<div id="header">Welcome!</div>
  1. 子元素选择器(Child Selector):选择某个元素的直接子元素。
/* CSS */
ul > li {color: green;
}/* HTML */
<ul><li>Item 1</li><li>Item 2</li>
</ul>
  1. 伪类(Pseudo-class):为元素的特定状态(如鼠标悬停、被点击等)设置样式。
/* CSS */
a:hover {color: red;
}/* HTML */
<a href="#">Hover over me</a>
  1. 组合选择器(Combination Selector):将多个选择器组合在一起,以便选择同时满足多个条件的元素。
/* CSS */
h1.special {color: blue;
}/* HTML */
<h1 class="special">Special Heading</h1>
  1. 属性选择器(Attribute Selector):选择具有特定属性值的元素。
/* CSS */
input[type="text"] {border: 1px solid black;
}/* HTML */
<input type="text" placeholder="Enter your name">
  1. 伪元素(Pseudo-element):为元素的特定部分(如首行、首字母、内容前后等)设置样式。
/* CSS */
p::first-line {font-weight: bold;
}/* HTML */
<p>This is a paragraph.</p>
  1. 相邻兄弟选择器(Adjacent Sibling Selector):选择紧接在另一个元素后的元素。
/* CSS */
h2 + p {color: blue;
}/* HTML */
<h2>Title</h2>
<p>This paragraph will be styled because it comes immediately after an h2 element.</p>
  1. 通用选择器(Universal Selector):选择所有元素。
/* CSS */
* {margin: 0;padding: 0;
}/* This will apply to all elements in the document */
  1. 后代选择器(Descendant Selector):选择元素的后代元素。
/* CSS */
ul li {color: red;
}/* HTML */
<ul><li>Item 1</li><li>Item 2</li>
</ul>
  1. 组合子元素选择器(Adjacent Sibling Selector):选择元素的直接子元素。
/* CSS */
div > p {font-weight: bold;
}/* HTML */
<div><p>This paragraph will be styled.</p><span>This span will not be styled.</span>
</div>
  1. 交集选择器(Intersection Selector):同时匹配多个条件。
/* CSS */
button.primary {background-color: blue;
}/* HTML */
<button class="primary">Submit</button>
  1. 选择器组合(Selector Grouping):选择器之间使用逗号分隔,以便一次性为多个选择器设置相同的样式。
/* CSS */
h1, h2, h3 {color: red;
}/* HTML */
<h1>Heading 1</h1>
<h2>Heading 2</h2>
<h3>Heading 3</h3>

举个例子

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>CSS选择器示例</title><style>/* 后代选择器 */div p {color: blue;}/* 组合子元素选择器 */div > span {font-weight: bold;}/* 交集选择器 */button.primary {background-color: green;color: white;padding: 10px 20px;border: none;border-radius: 5px;}/* 选择器组合 */h1, h2, h3 {font-family: Arial, sans-serif;}</style>
</head>
<body><div><p>This paragraph will be styled with blue color.</p><span>This span will have bold font weight.</span></div><button class="primary">Submit</button><h1>Heading 1</h1><h2>Heading 2</h2><h3>Heading 3</h3>
</body>
</html>

在这里插入图片描述

将 CSS 样式规则分开成一个单独的 .css 文件

/* style.css *//* 后代选择器 */
div p {color: blue;
}/* 组合子元素选择器 */
div > span {font-weight: bold;
}/* 交集选择器 */
button.primary {background-color: green;color: white;padding: 10px 20px;border: none;border-radius: 5px;
}/* 选择器组合 */
h1, h2, h3 {font-family: Arial, sans-serif;
}

假设上述css文件为style.css文件,编写html文件

<!DOCTYPE html>
<html>
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>CSS选择器示例</title><!-- 引入外部 CSS 文件 --><link rel="stylesheet" href="style.css">
</head>
<body><div><p>This paragraph will be styled with blue color.</p><span>This span will have bold font weight.</span></div><button class="primary">Submit</button><h1>Heading 1</h1><h2>Heading 2</h2><h3>Heading 3</h3>
</body>
</html>

通过将 CSS 规则放置在独立的 CSS 文件中,可以提高代码的可维护性和组织性,使得 HTML 文件更加简洁和易读。

除了列举的常见的语法,其实还有很多语法未提到。可以看下面的链接,进行学习。

菜鸟编程css入门教程

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

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

相关文章

C++ Primer 第五版 第十一章 关联容器

关联容器中的元素是按关键字来保存和访问的。 两个主要的关联容器类型是map和set。 一、使用关联容器 使用map 当从map中提取一个元素时&#xff0c;会得到一个pair类型的对象。pair是一个模板类型&#xff0c;保存两个名为first和second的&#xff08;公有&#xff09;数据成…

ASP.NET邮件收发程序的设计与开发

摘 要 《邮件收发程序的设计与开发》是一个综合性的程序设计&#xff0c;涉及到界面、系统、数据库、协议、编码等多个方面的内容。本设计前台采用.NET技术,后台数据库采用SQL Server 2000&#xff0c;语言采用C#&#xff0c;主要讲述了邮件系统的注册、登陆、管理、发送和…

EEL中 python端的函数名是如何传递给js端的

python端的函数名是如何传递给js端的 核心步骤&#xff1a;将函数名列表注入到动态生成的 eel.js 中&#xff0c;这样前端一开始引用的eel.js本身已经包含有py_function的函数名列表了。你打开开发者工具看看浏览器中的 eel.js文件源代码就知道了。 具体实现&#xff1a; # 读…

1. AB路线-BFS+分层图

0AB路线 - 蓝桥云课 (lanqiao.cn) #include <bits/stdc.h> #define int long long #define endl \n using namespace std; int n,m,k; //存迷宫格子 char board[1005][1005]; //vis[i][j][k]存坐标(i,j)的格子&#xff0c;在一个周期中第k次经过它 bool vis[1005][1005][…

vue2+Ts中openLayer绘图工具组件封装

vue2Ts中openLayer绘图工具组件封装 效果&#xff1a; 封装组件代码&#xff1a; <!-- openLayer绘图工具 --> <template><a-button-group v-show"isShow"><a-button v-if"shouldShowButton(point)" click"draw(Point)"…

Optional用法

说明&#xff1a;Optional和Stream一样&#xff0c;是Java8引入的特性&#xff0c;本文介绍Optional的几个实际用法。Steam流使用&#xff0c;参考下面这篇文章&#xff1a; Stream流使用 使用 1.保证值存在 // 1.保证值存在&#xff0c;pageNumber&#xff0c;pageSizeInte…

汇聚荣电商:拼多多开店需要多少费用?

想要在拼多多这个巨大的电商平台上开一家属于自己的店铺&#xff0c;很多创业者都会关心一个问题&#xff1a;开店需要多少费用?答案并不复杂&#xff0c;但背后的经营哲学和策略却值得深究。接下来&#xff0c;让我们从四个不同的方面来详细探讨这个问题。 一、开店成本分析 …

Linux/ubuntu build编译make时出现has modification time int the future的问题解决方法

针对Linux由于双系统之间的时间冲突导致linux时间经常变化&#xff0c;出现执行make命令时出现“make[2]: Warning: File xxx.c’ has modification time 1.6e05 s in the future “警告的问题&#xff0c;亦或者虚拟机出现相同的问题。 由于时钟同步问题&#xff0c;出现 warn…

1.基于python的单细胞数据预处理-特征选择

文章目录 特征选择背景基于基因离散度基于基因归一化方差基于基因皮尔森近似残差特征选择总结 参考&#xff1a; [1] https://github.com/Starlitnightly/single_cell_tutorial [2] https://github.com/theislab/single-cell-best-practices 特征选择背景 现在已经获得了经过…

C语言中的混合运算

1 混合运算 类型强制转换场景 整型数进行除法运算时&#xff0c;如果运算结果为小数&#xff0c;那么存储浮点数时一定要进行强制转换。例子&#xff1a; #include <stdio.h> //运算强制转换 int main(void) {int i5;//整型float ji/2;//这里做的是整型运算&#xff0…

【STM32】状态机实现定时器按键消抖,处理单击、双击、三击、长按事件

目录 一、简单介绍 二、模块与接线 三、cubemx配置 四、驱动编写 状态图 按键类型定义 参数初始化/复位 按键扫描 串口重定向 主函数 五、效果展示 六、驱动附录 key.c key.h 一、简单介绍 众所周知&#xff0c;普通的机械按键会产生抖动&#xff0c;可以采取硬件…

JavaScript的综合案例

案例要求&#xff1a; 实现一个表单验证 1.当输入框失去焦点时&#xff0c;验证输入的内容是否符合要求 2.当点击注册按钮时&#xff0c;判断所有输入框的内容是否都符合要求&#xff0c;如果不符合要求阻止表单提交 简单的页面实现 <!DOCTYPE html> <html lang&…