【JavaWeb学习专栏 | CSS篇】css简单介绍 css常用选择器集锦

个人主页:[兜里有颗棉花糖(https://xiaofeizhu.blog.csdn.net/)
欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创
收录于专栏【JavaWeb学习专栏】【Java系列】
希望本文内容可以帮助到大家,一起加油吧!!!💌
在这里插入图片描述

前言

css(Cascading Style Sheets),即层叠样式表。css可以对网页中元素位置进行像素级别的精细控制,可以一定程度上美化页面的效果,能够做到页面的样式和结构进行分离。结合以下html来说,html决定了页面的整体结构,而css则可以控制页面的展示效果。

目录

  • 前言
  • 一、css基本语法规范
  • 二、css引入方式
  • 三、CSS选择器
    • 基础选择器
      • 类选择器
      • id选择器
      • 通配符选择器
    • 复合选择器
      • 后代选择器
      • 伪类选择器

一、css基本语法规范

css的基本语法格式:选择器 + {一条/n条声明}

  • 选择器决定了对谁进行修改
  • 声明决定了修改啥
  • 声明的属性键值对键值对;进行区分,用:区分键与值。

下面我们来进行一个举例:
在这里插入图片描述
演示结果如下:
在这里插入图片描述

二、css引入方式

css主要有三种引入方式内部样式表、行内样式表、外部样式(实际开发中最常用的引入方式)

内部样式表:
内部杨样式表是通过stytle标签嵌套在html内部中的。
优点:能够让页面结构和样式进行分离。
缺点:只是一定程度上将页面结构和样式进行了分离(当css比较多的时候,就会显得页面非常的乱),即分离的还不够
举个栗子:
在这里插入图片描述
演示结果如下:
在这里插入图片描述

行内样式表:通过style属性, 来指定某个标签的样式。
举个栗子:<h1 style = "color : blue;font-size : 50px">hello world</h1>
演示结果如下:
在这里插入图片描述
行内样式表的优先级要高于内部样式表,举个栗子:在这里插入图片描述
演示结果如下:
在这里插入图片描述
所以,当行内样式表和内部样式表重复的时候以行内样式表为主

现在我们来看最后一种引入方式:外部样式(同时也是实际开发过程中最常用的引入方式)。
引入方式分为两步:首先创建一个css文件,然后通过link标签来引入刚刚创建的css文件。
样例演示:
在这里插入图片描述
在这里插入图片描述
外部样式恰好解决了内部样式表的一个弊端,即可以将页面样式和页面结构进行更进一步的分离,同时一定程度上提高了代码的可读性。

三、CSS选择器

注意:下面内容的选择器是css2标准中支持的选择器。

CSS 选择器用于选择 HTML 文档中的元素,并将样式应用于这些元素。通过 CSS 选择器,可以对网页的各个元素进行样式化和布局控制。简单来说如果我们相对标签中的元素某些属性进行修改的话,必须先选中该元素,然后才能对该元素中的某些属性进行修改。

CSS选择器主要分为两种:基础选择器和复合选择器。

基础选择器:

  • 标签选择器
  • 类选择器
  • id选择器
  • 通配符选择器

复合选择器:

  • 后代选择器
  • 子选择器
  • 并集选择器
  • 伪类选择器

基础选择器

类选择器

我们先通过一个样例再来学习类选择器的语法,请看举例:
在这里插入图片描述
在这里插入图片描述
运行结果如下:
在这里插入图片描述

类选择器语法如下:

  • 如果是长的类名, 可以使用 - 分割
  • 下方的标签使用class属性来调用。一个类可以被多个标签使用, 一个标签也能使用多个类(多个类名要使用空格分割, 这种做法可以让代码更好复用)
  • 一个标签可以使用多个类名,多个类型之间用空格间隔。

下面我们来看看使用多个类型的具体实例:
在这里插入图片描述
演示结果如下:
在这里插入图片描述

id选择器

id选择器的语法格式:

  • id选择器和类选择器的最大区别就是id选择器不能被多个标签使用(id是唯一的)。
  • css中使用#开头来表示id选择器。
  • id 选择器的值和 html 中某个元素的 id 值相同。

举个栗子:
在这里插入图片描述
在这里插入图片描述
运行结果如下:
在这里插入图片描述

通配符选择器

通配符选择器语法格式:

// 页面中的所有内容结构都会被改为红色
// 不需要被页面结构调用
* {color:red;
}

通配符选择器在实际的开发中最主要的作用就是用来对页面中的所有元素样式的默认样式进行消除,消除主要针对的就是用来消除边距。

样例演示:
在这里插入图片描述
演示结果如下:
在这里插入图片描述

复合选择器

复合选择器简单来说就是将之前学过的基础选择器进行组合来进行使用。

后代选择器

后代选择器又称为包含选择器,选择某个父元素中的子元素。

语法格式如下:元素1 元素2 {样式声明}

我们现在来进行举例:
在这里插入图片描述
在这里插入图片描述
现在我们如果想把上述有序列表中的文字字体更换为红色,请看下面几种修改方法。

修改方式1(使用内部选择器):
在这里插入图片描述
这种方式有种缺陷就是如果列表中的元素非常多,使用内部选择器的方式就非常的麻烦。
修改方式2(后代选择器):
在这里插入图片描述
修改方式3(选择器的组合:类选择器和后代选择器的组合使用):在这里插入图片描述

关于后代选择器的语法格式中,元素1和元素2之间的关系不仅仅可以是父子关系,也可以是爷爷和孙子之间的关系。
请看举例:
在这里插入图片描述
上述语句中元素1ol、元素2a之间的关系我们可以理解为爷爷和孙子之间的关系。
其实我们换成下面的写法也可以完成和上述代码一样的效果。在这里插入图片描述
上述的两种写法的最终演示结果如下:
在这里插入图片描述

伪类选择器

伪类选择器简单来说就是用来定义元素状态的一个选择器。

链接伪类选择器:

  • a:link 选择未被访问的链接
  • a:visited 选择已经被访问过的链接
  • a:hover 选择鼠标指针悬停上的链接
  • a:active 选择活动链接(鼠标按下了但是未弹起)

这里我们直接来进行举例:
在这里插入图片描述在这里插入图片描述
现在我想对这个链接做出如下修改:这里链接默认显示是黑色的,当鼠标悬停在该链接时显示颜色为红色,当鼠标点击链接但是没有弹起的时候显示的颜色为绿色。
在这里插入图片描述

伪类选择器不仅仅可以对链接标签生效,对其他的标签依然可以生效。
在这里插入图片描述
在这里插入图片描述
现在对该按钮元素进行设置:默认显示颜色是蓝色,鼠标悬停在该按钮上时显示颜色为红色,鼠标点击但是并未弹起时的显示颜色为绿色。
在这里插入图片描述

好了,本文到这里就结束了,主要讲解了css中一些常用的选择器。嗯,就到这里吧,再见啦友友们!!!

在这里插入图片描述

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

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

相关文章

Ubuntu安装向日葵【远程控制】

文章目录 引言下载向日葵安装向日葵运行向日葵卸载向日葵参考资料 引言 向日葵是一款非常好用的远程控制软件。这一篇博文介绍了如何在 Ubuntu Linux系统 中安装贝瑞向日葵。&#x1f3c3;&#x1f4a5;&#x1f4a5;&#x1f4a5;❗️ 下载向日葵 向日葵官网: https://sunl…

CAN总线协议编程实例

1. can.h #ifndef __CAN_H #define __CAN_H#include "./SYSTEM/sys/sys.h"/******************************************************************************************/ /* CAN 引脚 定义 */#define CAN_RX_GPIO_PORT GPIOA #define CAN_RX_GPI…

unity 2d 入门 飞翔小鸟 死亡 显示GameOver(十四)

1、添加Img create->ui->img 把图片拖进去 2、和分数一样、调整位置 3、修改角色脚本 using System.Collections; using System.Collections.Generic; using UnityEngine;public class Fly : MonoBehaviour {//获取小鸟&#xff08;刚体&#xff09;private Rigidbod…

在springboot中引入参数校验

一、概要 一般我们判断前端传过来的参数&#xff0c;需要对某些值进行判断&#xff0c;是否满足条件。 而springboot相关的参数校验注解&#xff0c;可以解决我们这个问题。 二、快速开始 首先&#xff0c;我用的springboot版本是 3.1.5 引入参数校验相关依赖 <!--1…

ArkUI Button组件

Button 1.声明button组件 Button(label?:ResourceStr) label是按钮上面显示的文字 如果不传入label 则需要在内部嵌套其他组件 内部嵌套其他组件 可以放入icon图标来构建自己想要的样式 按钮类型 按钮使用type(ButtonType.xxx)属性来设置&#xff0c;xxx的类型分为三种 1.…

无人机自动停机坪的多样化选择

随着巡查无人机的广泛应用&#xff0c;无人机自动停机坪成为一项重要的支持设施&#xff0c;主要用于提供停放、充电/换电、机身保护以及气象监测等功能。尽管许多人认为无人机自动停机坪只是一个简单的箱体结构&#xff0c;但实际上&#xff0c;国内无人机自动停机坪产品在外观…

Android View.inflate 和 LayoutInflater.from(this).inflate 的区别

前言 两个都是布局加载器&#xff0c;而View.inflate是对 LayoutInflater.from(context).inflate的封装&#xff0c;功能相同&#xff0c;案例使用了dataBinding。 View.inflate(context, layoutResId, root) LayoutInflater.from(context).inflate(layoutResId, root, fals…

HarmonyOS开发工具DevEco Studio的下载和安装

一、DevEco Studio概述 一、下载安装鸿蒙应用开发工具DevEco Studio 开发鸿蒙应用可以从鸿蒙系统上运行第一个程序Hello World开始。 为了得到这个Hello World&#xff0c;你需要得到这个Hello World的源代码&#xff0c;源代码是用人比较容易看得懂的计算机编程语言规范写的…

总结一篇本地idea配合阿里云服务器使用docker

idea打包打镜像发到阿里云服务器 先说一下使用docker desktop软件怎么使用 1.下载docker desktop官网&#xff0c;先注册个账号吧&#xff0c;后面桌面软件登录会用到&#xff08;当然&#xff0c;配合这个软件使用需要科学上网&#xff09; 安装这个要配合wsl使用&#xf…

Spring Bean基础

写在最前面: 本文运行的示例在我github项目中的spring-bean模块&#xff0c;源码位置: spring-bean 前言 为什么要先掌握 Spring Bean 的基础知识&#xff1f; 我们知道 Spring 框架提供的一个最重要也是最核心的能力就是管理 Bean 实例。以下是其原因&#xff1a; 核心组件…

静态SOCKS5的未来发展趋势和新兴应用场景

随着网络技术的不断发展和进步&#xff0c;静态SOCKS5代理也在不断地完善和发展。未来&#xff0c;静态SOCKS5代理将会呈现以下发展趋势和新兴应用场景。 一、发展趋势 安全性更高&#xff1a;随着网络安全问题的日益突出&#xff0c;用户对代理服务器的安全性要求也越来越高…

SQL语句的执行顺序怎么理解?

SQL语句的执行顺序怎么理解&#xff1f; 我们常常会被SQL其书写顺序和执行顺序之间的差异所迷惑。理解这两者的区别&#xff0c;对于编写高效、可靠的SQL代码至关重要。今天&#xff0c;让我们用一些生动的例子和场景来深入探讨SQL的执行顺序。 一、书写顺序 VS 执行顺序 SQ…

SVN修改已提交版本的日志方法

1.在工做中一直是使用svn进行項目的版本控制的&#xff0c;有时候因为提交匆忙&#xff0c;或是忘了添加Log&#xff0c;或是Log内容有错误。遇到此类状况&#xff0c;想要在查看项目的日志时添加log或是修改log内容&#xff0c;遇到以下错误&#xff1a; Repository has not b…

openEuler 22.03 升级openssh9.5

安装telnet 进行下面操作前&#xff0c;务必确保telnet服务安装成功。 安装xinetd yum install xinetd -y安装telnet服务&#xff0c;下载地址下载地址 rpm -ivh telnet-0.17-86.aarch64.rpm rpm -ivh telnet-server-0.17-86.aarch64.rpm重启 service xinetd restart确保能…

php实现个性化域名(短网址)和个性化登录模版的解决方案

在PHP中&#xff0c;个性化域名通常指的是根据用户或业务需求动态生成具有特定规律的子域名。实现个性化域名的方法主要依赖于服务器配置和路由规则。下面是一些基本的步骤和考虑因素&#xff0c;以帮助你了解如何个性化域名&#xff0c;并了解这样做的好处。 如何实现个性化域…

基于java swing 药品销售管理系统

大家好&#xff0c;我是DeBug&#xff0c;很高兴你能来阅读&#xff01;作为一名热爱编程的程序员&#xff0c;我希望通过这些教学笔记与大家分享我的编程经验和知识。在这里&#xff0c;我将会结合实际项目经验&#xff0c;分享编程技巧、最佳实践以及解决问题的方法。无论你是…

PHP对接企业微信

前言 最近在做项目中&#xff0c;要求在后台管理中有企业微信管理的相关功能。相关准备工作&#xff0c;需要准备好企业微信账号&#xff0c;添加自建应用&#xff0c;获得相应功能的权限&#xff0c;以及agentid、secre等。 参考文档&#xff1a; 企业微信开发文档 功能实现 因…

经典目标检测YOLO系列(一)引言_目标检测架构

经典目标检测YOLO系列(一)引言_目标检测架构 一个常见的目标检测网络&#xff0c;其本身往往可以分为一下三大块&#xff1a; Backbone network&#xff0c;即主干网络&#xff0c;是目标检测网络最为核心的部分&#xff0c;backbone选择的好坏&#xff0c;对检测性能影响是十…

一文读懂:GPU最强“辅助“HBM到底是什么?

各位ICT的小伙伴们大家好呀。 我是老猫。 今天我们聊聊GPU背后的女人&#xff0c;不对&#xff0c;是背后的大赢家-HBM。 那么&#xff0c;HBM究竟是什么呢&#xff1f;为何在AI时代如此火热&#xff1f;下面我们就一一道来。 ▉ HBM到底为何方神圣&#xff1f; HBM全称为H…