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.mzph.cn/bicheng/12811.shtml

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

相关文章

通义千问接口

接口文档 请求 import random from http import HTTPStatus from dashscope import Generation # 建议dashscope SDK 的版本 > 1.14.0def call_with_messages():messages [{role: system, content: You are a helpful assistant.},{role: user, content: 如何做西红柿炒…

产品推荐 | 基于 AMD Alveo V80 数据中心的FPGA加速器卡

1、产品概述 Alveo V80 卡采用强大的 AMD Versal™ XCV80 HBM 系列自适应 SoC&#xff0c;将高带宽存储器 (HBM2e) 和 800 Gb/s 高速网络封装到全高、 长外形尺寸的双插槽卡中&#xff0c;专为在本地服务器或云中部署而设计。 V80 加速器经过优化&#xff0c;可通过 AMD Vers…

Milvus基本介绍与相关概念

一、介绍 Milvus是一种开源的特征向量相似度搜索引擎,主要用于处理大规模的向量数据。它是由ZILLIZ团队推出的一款高效、可扩展的相似度搜索引擎。 Milvus的基本概念包括: 向量:Milvus主要用于处理向量数据,向量是由一组数值组成的数据结构,可以表示特征或者数据实例。距…

运维别卷系列 - 云原生监控平台 之 06.prometheus pushgateway 实践

文章目录 [toc]Pushgateway 简介Pushgateway 部署创建 svc创建 deployment Pushgateway 测试删除 Pushgateway 上对应 lable 的数据 Pushgateway 简介 WHEN TO USE THE PUSHGATEWAY Pushgateway 是一种中介服务&#xff0c;允许您从无法抓取的作业中推送指标。 The Pushgateway…

智慧园区数字化平台总体规划与建设方案(49页PPT,软件全套建设方案)

01智慧园区数字化平台总体规划 02智慧园区工业云平台建设方案 03园区智慧办公平台建设方案 04园区智能工厂建设解决方案 05园区智慧能源管理解决方案 06园区智慧政务管理解决方案 软件全套精华资料包清单部分文件列表&#xff1a; 工作安排任务书&#xff0c;可行性分析报告&am…

基于Django实现的校园疫情监控平台

基于Django实现的校园疫情监控平台 开发语言:Python 数据库&#xff1a;MySQL所用到的知识&#xff1a;Django框架工具&#xff1a;pycharm、Navicat、Maven 系统功能实现 登录注册功能 用户在没有登录自己的用户名之前只能浏览本网站的首页&#xff0c;想要使用其他功能都会…

web系统日常运维命令和工具

一、前言 web系统日常运维命令和工具 二查看服务器资源使用情况 1、内存使用情况 free -h 2、cpu 使用情况 3、磁盘使用情况 df -h /home 4、查看文件日志 查看文件尾部持续输出 tail -n 1000 -f xxx.log 查找文件匹配内容 cat xxx.log | grep XXXXX 查看zip文件内…

视觉识别应用的场景有哪些

1.视觉识别应用的场景有哪些 视觉识别应用的场景非常广泛&#xff0c;以下是一些常见的应用场景&#xff1a; 品牌与营销&#xff1a;视觉识别在品牌建设中起着至关重要的作用。它能帮助企业在市场上建立独特的品牌形象&#xff0c;并通过各种印刷品&#xff08;如名片、信纸…

Java数据类型:基本数据类型

Java是一种强类型语言&#xff0c;定义变量时&#xff0c;必须指定数据类型。 // 变量必须指定数据类型 private String username;初学者不免有个疑问&#xff1a;在实际编写代码的过程中&#xff0c;该如何选择数据类型呢&#xff1f; 回答这个问题之前&#xff0c;先来解决…

线性/非线性最小二乘 与 牛顿/高斯牛顿/LM 原理及算法

最小二乘分为线性最小二乘和非线性最小二乘 最小二乘目标函数都是min ||f(x)||2 若f(x) ax b&#xff0c;就是线性最小二乘&#xff1b;若f(x) ax2 b / ax2 bx 之类的&#xff0c;就是非线性最小二乘&#xff1b; 1. 求解线性最小二乘 【参考】 2. 求解非线性最小二乘…

[数据结构]红黑树的原理及其实现

文章目录 红黑树的特性红黑树的时间复杂度推导&#xff1a;结论红黑树与AVL树比较 红黑树的插入红黑树的节点定义调整策略思考情况2&#xff1a;思考情况3&#xff1a; 代码实现myBTRee.htest.cpp 红黑树的特性 红黑树最常用的平衡二叉搜索树。跟AVL树不同的是&#xff0c;红黑…

阻抗控制理解之逆动态控制律

具有六个自由度的二阶机械系统&#xff0c;其特征是给定的质量、阻尼和刚度&#xff0c;称为机械阻抗。 用于运动控制的加速度解决方法&#xff0c;它旨在通过逆动力学控制律在加速度水平上解耦和线性化非线性机器人动力学。在与环境存在交互作用的情况下&#xff0c;控制律 考…

代码托管(二)git(4)冲突解决

一、pull更新代码冲突 二、cherry-pick冲突 1、冲突演示 本地check out到当前分支&#xff0c;双击目标分支&#xff0c;选择需要cherry-pick的commit&#xff0c;右键选择cherry-pick。 &#xff08;1&#xff09;如果没有冲突&#xff0c;会自动add--》并自动commit&#…

Sam Blackshear谈Move语言的创新

Sui上的Move编程语言融合了三项基本创新&#xff1a;面向对象的数据模型、可编程交易区块和动态字段。Mysten Labs的联合创始人兼首席技术官Sam Blackshear在五年前创建了Move&#xff0c;这是一种专门为在区块链上编写智能合约而设计的语言。这三项在Sui上的创新提升了Move的潜…

【nfs服务部署服务端和客户端搭建】

原理 NFS&#xff08;Network File System&#xff09;是文件服务器之一。它的功能是可以通过网络&#xff0c;让不同的机器、不同的操作系统可以彼此共享数据文件。 NFS服务器可以让服务端的共享目录挂载到本地端的文件系统中&#xff0c;其他服务器如果想访问共享目录&#…

C++原型模式

原型模式实现方式 原型模式的结构 抽象原型类&#xff1a;规定了具体原型对象必须实现的接口。具体原型类&#xff1a;实现抽象原型类的 clone() 方法&#xff0c;它是可被复制的对象。访问类&#xff1a;使用具体原型类中的 clone() 方法来复制新的对象。 //父类 class Protot…

单链表经典算法 面试题--力扣02.04

链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09;【点击即可跳转】 思路&#xff1a;创建新链表&#xff1a;大链表和小链表 将pcur节点小于x的值&#xff0c;尾插在小链表中 将pcur节点大于或等于x的值&#xff0c;尾插在大链表中 最终---- return lessHead->…

护眼 保护眼睛

高度近视600度的我&#xff0c;花了4个月时间度数降了50度&#xff0c;又花了一个多月的时间&#xff0c;双眼50度散光清零了。 然后就有人问我:散光都可以恢复吗&#xff1f; 我有点被问懵了&#xff0c;散光难道不容易恢复吗&#xff1f;直到我在网上查了一下&#xff0c;才发…

vue3和vite

vue3 1、vue3使如何实现效率提升的 客户端渲染效率比vue2提升了1.3~2倍 SSR渲染效率比vue2提升了2~3倍 1.1、静态提升 解释&#xff1a; 1. 对于静态节点&#xff08;如&#xff1a;<h1>接着奏乐接着舞</h1>&#xff09;&#xff0c;vue3直接提出来了&#xff…