【JavaEE】CSS基础知识

news2024/11/17 21:39:14

文章目录

  • 1.CSS概念
    • 1.1CSS是干啥的?
    • 1.2基础语法规范
    • 1.2基础语法规范
    • 1.3引入格式
      • ✨内部样式表
      • ✨行内样式表
      • ✨外部样式(最常用的样式)
    • 1.4代码风格
      • ✨样式格式
      • ✨样式大小写
  • 2.选择器
    • 2.1选择器的功能
    • 2.2基础选择器有哪些?
      • 🛠️标签选择器
      • 🛠️类选择器
      • 🛠️id 选择器
      • 🛠️通配符选择器
      • 基础选择器小结
    • 2.3复合选择器有哪些?
      • 🛠️后代选择器
      • 🛠️子选择器
      • 🛠️并集选择器
      • 🛠️伪类选择器
      • 复合选择器小结
  • 3.常用元素属性
    • 3.1字体属性
    • 3.2文本属性
    • 3.3背景属性

1.CSS概念

1.1CSS是干啥的?

CSS 能够对网页中元素位置的排版进行像素级精确控制, 实现美化页面的效果. 能够做到页面的样式和结构分离;简单的说就是,没用CSS之前就相当于原照片,使用CSS之后,照片就相当于被p了,被美颜了。

1.2基础语法规范

选择器 + {一条/N条声明}

  • 选择器决定针对谁修改 (找谁)

  • 声明决定修改啥. (干啥)

  • 声明的属性是键值对. 使用 ; 区分键值对, 使用 : 区分键和值.!在这里插入图片描述

1.2基础语法规范

选择器 + {一条/N条声明}

  • 选择器决定针对谁修改(对谁进行操作)
  • 声明决定修改啥.(操作谁的什么)
  • 声明的属性是键值对. 使用 ; 区分键值对, 使用 : 区分键和值.
<style>
p {
	/* 设置字体颜色 */
	color: red;
	/* 设置字体大小 */
	font-size: 30px;
}
</style>
<p>hello</p>         

注意:

  • CSS要写在style标签当中。
  • CSS中使用/* */进行注释,也可以使用CTRL+/进行快速注释。

1.3引入格式

✨内部样式表

写在 style 标签中. 嵌入到 html 内部.理论上来说 style 放到 html 的哪里都行. 但是一般都是放到 head 标签中。
优点:能够让样式和页面结构分离,降低耦合度,利于以后的维护。
缺点:分离的还不够彻底. 尤其是CSS 内容多的时候。

✨行内样式表

通过 style 属性, 来指定某个标签的样式.只适合于写简单样式. 只针对某个标签生效.
缺点: 不能写太复杂的样式.
这种写法优先级较高, 会覆盖其他的样式。

✨外部样式(最常用的样式)

  1. 创建一个CSS文件
  2. 将CSS文件通过link标签导入到HTML文件中
<link rel="stylesheet" href="[CSS文件路径]">

优点: 样式和结构彻底分离了,有利于日后的维护,降低日后维护成本。
缺点: 受到浏览器缓存影响, 修改之后 不一定 立刻生效。

1.4代码风格

✨样式格式

  1. 紧凑型
{ color: red; font-size: 30px;}
  1. 展开风格(推荐)
p {
	color: red;
	font-size: 30px;
}

✨样式大小写

CSS不用区分大小写,在开发过程中推荐小写

2.选择器

2.1选择器的功能

选中页面中的指定的元素,这样我们才能确定我们接下来的操作是对于谁实现的,就好比我们在打原神时,我们打怪时开大招,就需要确定是谁开大招去打谁。

2.2基础选择器有哪些?

🛠️标签选择器

方式:

标签名 {
 	样式声明
 }

特点:

  • 能快速为同一类型的标签都选择出来。
  • 不能差异化选择
<style>
	p {
		color: red;
	}
	div {
		color: green;
	}
	</style>
		<p>神里凌华</p>
		<p>神里凌华</p>
		<div>枫原万叶</div>
		<div>枫原万叶</div>

代码效果:
在这里插入图片描述

🛠️类选择器

方式:

类名 {
 	样式声明
 }

特点:

  • 差异化表示不同的标签
  • 通过类的继承让同一个效果应用在不同的标签
<style>
        .red {
            color: red;
        }
        .blue {
            color: blue;
        }
        </style>
            <p class="red">神里凌华</p>
            <p>神里凌华</p>
            <div class="blue">枫原万叶</div>
            <div>枫原万叶</div>

代码效果:
在这里插入图片描述

🛠️id 选择器

方式:

#id {
 	样式声明
 }

特点:

  • CSS 中使用 # 开头表示 id 选择器
  • id 选择器的值和 html 中某个元素的 id 值相同
  • html 的元素 id 不必带 #
  • id 是唯一的, 不能被多个标签使用 (是和 类选择器 最大的区别),类选择器相当于姓名,id选择器相当于身份证。
<style>
        #li {
            color: brown;
        }
        #yuan {
            color: orange;
        }
        </style>
            <p id="li">神里凌华</p>
            <p>神里凌华</p>
            <div id="yuan">枫原万叶</div>
            <div>枫原万叶</div>

在这里插入图片描述

🛠️通配符选择器

使用 * 的定义, 选取所有的标签.

<style>
        * {
            color: red;
        }
        </style>
            <p >神里凌华</p>
            <p>神里凌华</p>
            <div >枫原万叶</div>
            <div>枫原万叶</div>

代码效果:
在这里插入图片描述

基础选择器小结

作用特点
标签选择器能选出所有相同标签不能差异化选择
类选择器能选出一个或多个标签根据需求选择, 最灵活, 最常用
id 选择器能选出一个标签同一个 id 在一个 HTML 中只能出现一次
通配符选择器选择所有标签特殊情况下使用

2.3复合选择器有哪些?

🛠️后代选择器

后代选择器又叫包含选择器. 选择某个父元素中的某个子元素.
方式:

元素1 元素2 {
 	样式声明
 }

特点:

  • 元素 1 和 元素 2 要使用空格分割
  • 元素 1 是父级, 元素 2 是子级, 只选元素 2 , 不影响元素 1
div p {
            color: red;
        }
        </style>
            
            <div >
                你好
                <p>还行吧</p>
            </div>

代码效果:只对div标签中的p里的内容有作用
在这里插入图片描述

🛠️子选择器

方式(只选亲儿子, 不选孙子元素):

元素1>元素2 { 
	样式声明
 }

🛠️并集选择器

方式:

元素1,元素2 {
 	样式声明
 }

特点:

  • 通过 逗号 分割等多个元素
  • 表示同时选中元素 1 和 元素 2
  • 任何基础选择器都可以使用并集选择器.
  • 并集选择器建议竖着写. 每个选择器占一行. (最后一个选择器不能加逗号)
<style>
       div,p {
           color: red;
       }
       </style>
           
           <p>神里凌华</p>
           <p>神里凌华</p>
           <div>枫原万叶</div>
           <div>枫原万叶</div>

代码效果:
在这里插入图片描述

🛠️伪类选择器

  1. 链接伪类选择器
a:link 选择未被访问过的链接
a:visited 选择已经被访问过的链接
a:hover 选择鼠标指针悬停上的链接
a:active 选择活动链接(鼠标按下了但是未弹起)
<style>
        /* 选择未被访问过的链接 */
        a:link {
        color: black;
            /* 去掉 a 标签的下划线 */
            text-decoration: none;
            
        } 
        /* 选择已经被访问过的链接 */
        a:visited {
            color: green;
        }
        /* 选择鼠标指针悬停上的链接 */
        a:hover {
            color: red;
        } 
        /* 选择活动链接(鼠标按下了但是未弹起) */
        a:active {
            color: blue;
        }
        </style>
            
            <a href="#">点击打开学习资料</a>

代码效果:观察点击前;点击中;点击后的效果。
在这里插入图片描述

复合选择器小结

选择器作用注意事项
后代选择器选择后代元素可以是孙子元素
子选择器选择子元素只能选亲儿子, 不能选孙子
并集选择器选择相同样式的元素更好的做到代码重用
链接伪类选择器选择不同状态的链接重点掌握 a:hover 的写法
:focuse 伪类选择器选择被选中的元素input:focus

3.常用元素属性

3.1字体属性

✨设置字体
方式:

选择器 {
	font-family: ;
}
  • 字体名称可以用中文, 但是不建议。
  • 多个字体之间使用逗号分隔. (从左到右查找字体, 如果都找不到, 会使用默认字体. )
  • 如果字体名有空格, 使用引号包裹.
  • 建议使用常见字体, 否则兼容性不好.
<style>
        div {
            font-family: 'Microsoft YaHei';
        }
        span {
            font-family: '宋体';
        }
        </style>
        
        <div>你好,世界</div>
        <span>你好,Java</div>

代码效果:
在这里插入图片描述

✨字体大小
方式:

选择器 {
	font-size: ;
}
  • size的单位通常使用px,px是像素含义。
<style>
        div {
            font-family: 'Microsoft YaHei';
            font-size: 50px;
        }
        span {
            font-family: '宋体';
            font-size: 30px;
        }
        </style>
        
        <div>你好,世界</div>
        <span>你好,Java</div>

代码效果:
在这里插入图片描述
✨字体粗细
方式:

选择器 {
	font-weight: ;
}
  • 可以使用数字表示粗细
  • 也可以使用bold表示
<style>
       div {
           font-weight: bold;
           
       }
       span {
           font-weight: 100;
       }
       </style>
       
       <div>你好,世界</div>
       <span>你好,Java</div>

代码效果:
在这里插入图片描述
✨文字样式
方式:

选择器 {
	font-style: ;
}
  • 一般我们都是将文字从倾斜改为不倾斜,很少从不倾斜改为倾斜
<style>
       div {
           /* 不倾斜 */
           font-style:normal;
           
       }
       span {
           /* 倾斜 */
           font-style: italic;
       }
       </style>
       
       <div>你好,世界</div>
       <span>你好,Java</div>

代码效果:
在这里插入图片描述

3.2文本属性

✨文本颜色
方式:

选择器 {
	color: ;
}
  • 这里的参数可以是十六进制的数
  • 可以是一个函数rgb(),它里面有三个参数可以认为是R,G,B; R (red), G (green), B (blue) 的方式表示颜色(色光三原色). 三种颜色按照不同的比例搭配, 就能混合出各种五彩斑斓的效果.计算机中针对 R, G, B 三个分量, 分别使用一个字节表示(8个比特位, 表示的范围是 0-255, 十六进制表示为 00-FF).
  • 预定义的颜色值(直接是单词)
<style>
       div {
           color: #ff0;
           
       }
       span {
           color: rgb(25, 33, 50);
       }
       p {
           color: red;
       }
       </style>
       
       <div>你好,世界</div>
       <span>你好,Java</span>
       <p>你好,看这篇文章的帅哥靓女</p>

代码效果:
在这里插入图片描述
✨文本对齐
方式:

选择器 {
	text-align: ;
}
  • 它当中有三个参数分别是left(左对齐),center(居中对其),right(右对齐)。
<style>
            .text-align .one {
                text-align: left;
            }
            .text-align .two {
                text-align: right;
            }
            .text-align .three {
                text-align: center;
            }
         </style>
            <div class="text-align">
                <div class="one">左对齐</div>
                <div class="two">右对齐</div>
                <div class="three">居中对齐</div>
            </div>

代码效果:
在这里插入图片描述

✨文本装饰
方式:

选择器 {
	color: ;
}

常见的取值:

underline 下划线. [常用]
none 啥都没有. 可以给 a 标签去掉下划线.
overline 上划线. [不常用]
line-through 删除线 [不常用]
div {
           text-decoration: underline;
           
       }
       span {
           text-decoration: line-through;
       }
       p {
           text-decoration: overline;
       }
       </style>
       
       <div>你好,世界</div>
       <span>你好,Java</span>
       <p>你好,看这篇文章的帅哥靓女</p>

代码效果:
在这里插入图片描述

✨文本缩进
只对第一行生效
方式:

选择器 {
	text-indent: [值];
}
  • 单位可以使用px或者 em
  • 使用 em 作为单位更好. 1 个 em 就是当前元素的文字大小
  • 缩进可以是负的, 表示往左缩进. (会导致文字就冒出去了)
<style>
       div {
           text-indent: 2em;
       }

       p {
           text-indent: 0em;
       }
       </style>
       
       <div>你好,世界 你好,Java</div>

       <p>你好,看这篇文章的帅哥靓女</p>

代码效果:
在这里插入图片描述

3.3背景属性

✨背景颜色
方式:

选择器 {
	background-color: 
}
  • 背景颜色的格式和文本颜色的格式相似,这里不再赘述了。

✨背景照片
方式:

选择器 {
	 background-image: url();
}
  • url中填写绝对路径和相对路径都可以
  • url可以加引号,也可以不加引号

✨背景平铺
方式:

选择器 {
	background-repeat: ;
}

参数如下:

  • repeat: 平铺
  • no-repeat: 不平铺
  • repeat-x: 水平平铺
  • repeat-y: 垂直平铺
  • 在不设置背景平铺的参数时,整个屏幕都会铺满

✨背景位置
方式:

选择器 {
	background-position: x y;
}

三种风格:

  1. 方位名词: (top, left, right, bottom)
  2. 精确单位: 坐标或者百分比(以左上角为原点)
  3. 混合单位: 同时包含方位名词和精确单位

注意

当给出的是方位名词是只有一个时,没给的哪一个就默认居中,在给出的时精确的数字时也是如此。

我们可以将这个页面想象成是一个坐标轴我们给出的参数都是相对于坐标轴来进行使用得到。
在这里插入图片描述
✨背景尺寸
方式:

选择器 {
	background-size: ;
}

可用参数如下:

  • 可以填具体的数值: 如 40px 60px 表示宽度为 40px, 高度为 60px
  • 也可以填百分比: 按照父元素的尺寸设置.
  • cover: 把背景图像扩展至足够大,以使背景图像完全覆盖背景区域。背景图像的某些部分也许无法显示在背景定位区域中。
  • contain: 把图像图像扩展至最大尺寸,以使其宽度和高度完全适应内容区域.

写在最后:

🐣🐣🐣以上就是本文全部内容,如果对你有所帮助,希望能留下你的点赞+关注,我会更加努力的更新内容!非常感谢🧡🧡🧡

若本篇文章有错误的地方,欢迎大佬们指正!

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

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

相关文章

GPT 告诉你请求到达 Tomcat 是怎么处理的

tomcat如何监听请求到达 没有SpringMVC,tomcat 如何处理请求 Tomcat 线程池的作用是什么 如何配置tomcat 线程池 tomcat 线程池的主要任务是处理连接请求 tomcat线程池是怎么实现的 到这里可以看出来&#xff0c;tomcat线程池的实现方式也是通过ThreadPoolExecutor 实现 如何根…

Git 使用教程整理

一、配置Git 编码为utf-8 设置登陆账号 使用Git GUI操作 二、获取远程仓库代码 推荐使用使用 git bash 命令&#xff1a;git clone xxx git clone https://github.com/jeromeetienne/jquery-qrcode.git 其他参考&#xff1a;使用Git获取最新版本到本地_gitgui 获取新版本_天…

【Java开发】Spring Cloud 11 :Gateway 配置 ssl 证书(https、http 访问)

最近研究给微服务项目配置 ssl 证书&#xff0c;如此才可以对接微信小程序&#xff08;需要使用 https 请求&#xff09;。传统单体项目来说&#xff0c;首先往项目中添加证书文件&#xff0c;然后在配置文件中配置 ssl 证书路径、密码等相关信息&#xff1b;那么微服务这么多项…

高性能定时器--时间轮/多级时间轮

运行原理 指针指向轮子上的一个槽&#xff0c;轮子以恒定的速度顺时针转动&#xff0c;每转动一步就指向下一个槽&#xff08;虚线指针指向的槽&#xff09;&#xff0c;每次转动称为一个tick&#xff0c;一个tick的时间称为时间轮的槽间隔slot interval&#xff0c;即心搏时间…

3。数据结构(2)

嵌入式软件开发第三部分&#xff0c;各类常用的数据结构及扩展&#xff0c;良好的数据结构选择是保证程序稳定运行的关键&#xff0c;&#xff08;1&#xff09;部分包括数组&#xff0c;链表&#xff0c;栈&#xff0c;队列。&#xff08;2&#xff09;部分包括树&#xff0c;…

JavaWeb_Web前端_Element组件库

JavaWeb_Web前端_Element组件库 快速入门安装ElementUI组件库引入ElementUI组件库添加组件并导入到根组件添加组件导入到根组件 Table 表格Pagination 分页Dialog对话框表单 案例Vue路由Vue类DeptView.vue动态视图组件请求链接组件 打包和部署打包打包按钮打包文件 部署部署静态…

OpenAI文本生成器-OpenAI文本生成器

openai自动批量写文章 如果您正在寻找一个能够自动生成高质量文章的工具&#xff0c;OpenAI 写文章就是您需要的推广神器。 OpenAI 写文章基于 OpenAI 最先进的语言模型技术&#xff0c;可以使用自然语言生成技术自动创作文章。只需在平台上提供少量的关键词或概念&#xff0…

Python每日一练:最长递增区间狄杰斯特拉(80分)K树(0分)

文章目录 前言一、最长递增区间二、狄杰斯特拉&#xff08;80&#xff09;三、K树&#xff08;0&#xff09;总结 前言 很显然&#xff0c;Python的受众远远大于C&#xff0c;其实笔者本人对Python的理解也是远强于C的&#xff0c;C纯粹是为了假装笔者是个职业选手才随便玩玩的…

java基础入门-04

Java基础入门-04 11、集合&学生管理系统11.1.ArrayList集合和数组的优势对比&#xff1a;11.1.1 ArrayList类概述11.1.2 ArrayList类常用方法11.1.2.1 构造方法11.1.2.2 成员方法11.1.2.3 示例代码 11.1.3 ArrayList存储字符串并遍历11.1.3.1 案例需求11.1.3.2 代码实现 11…

基于野火F407骄阳开发板的苹果采摘机器人机械臂的采摘轨迹与夹持器的采摘动作的设计(1)

基于野火F407骄阳开发板的苹果采摘机器人机械臂的采摘轨迹与夹持器的采摘动作的设计&#xff08;1&#xff09; 苹果采摘机器人1、采摘流程与硬件设计2、机械臂驱动以及采摘轨迹设计2.1、台达A2电机驱动实现2.2、机械臂寻找苹果巡逻轨迹 苹果采摘机器人 1、采摘流程与硬件设计…

fio 使用碰到的坑,一些不常用,但可能用到的参数(校验 跳跃 多线程)

1&#xff0c; 祼盘读写 一个分区 -filename/dev/sdb1 同时测试多个分区 -filename/dev/sdb1;/dev/sdb2 比例&#xff1a; fio -filename/dev/sdb1 -direct1 -iodepth 1 -thread -rwrandread -ioenginepsync -bs4k -size50G -numjobs10 -runtime1000 -group_reporting -nam…

es6的语法糖,展开运算符,类的实现

1.0 ES6语法糖 [重点] 1.1数组的解构赋值 // 声明多个变量 let [a,b,c] [1,2,3] ​ let a1&#xff0c;b2&#xff1b; // 交换数值 [a,b] [b,a] ​2 1.12 函数的参数结构 1.2对象的解构 对象存在键值对&#xff0c;如果需要解构对象&#xff0c;你需要使用对象的键名为变量…

Flask 知识点整理

文章目录 1.URL与视图的映射带参数的url&#xff1a;将参数固定到了path中查询字符串的方式传参 2.模板渲染给html文件传参 3.模板访问对象属性User 是个类User是个字典 4.过滤器的使用通过一个 | 管道符进行过滤自定义过滤器 5.控制语句iffor 1.URL与视图的映射 带参数的url&…

IIC总线简介

IIC总线 IIC总线是Philips公司在八十年代初推出的一种串行、半双工总线 主要用于近距离、低速的芯片之间的通信&#xff1b;IIC总线有两根双向的信号线一根数据线SDA用于收发数据&#xff0c;一根时钟线SCL用于通信双方时钟的同步&#xff1b;IIC总线硬件结构简单&#xff0c;成…

第9章 项目成本管理

文章目录 9.1.1 成本与成本管理概念 329项目成本管理的过程 9.1.2 相关术语 331成本的类型&#xff08;6种&#xff09;应急储备与管理储备 9.2.3 项目成本管理计划制订的 输出 3349.3.1 项目成本估算的主要相关因素 335项目估算还需要考虑但 容易被忽视的 主要因素 9.3.2 项目…

贪心 题目集

任务安排问题 某个系统中有一个设备&#xff0c;该设备每次只能分配给一个任务使用&#xff0c;且只有当任务结束后才能再分配给另一个任务使用。 假设系统启动时间计为时间0点&#xff0c;预先有一份任务计划表&#xff0c;预定了每个任务的开始时间点和持续时间。 要求设计算…

[大二下]手把手1小时下载Pandoc

老规矩先给各位友友们提供参考解决方法,再说为啥是怎么和这哥们结缘的~ 为了能更加详细,小卓又卸载了重装了一遍!!! 所以麻烦各位佬, 能给个赞, 谢谢各位佬了,坦诚的说,因为友友们免费的点赞收藏,却是我写下去的动力~ 第一步:进入官网(如果没有科学上网的可能比较慢, 如果真的…

腾讯云 Ubuntu Desktop 22.04 桌面版

安装 Ubuntu Server 22.04 安装 Ubuntu Server 22.04重置登陆密码&#xff0c; 默认用户名 ubuntu 添加用户 不建议直接使用默认用户&#xff0c; 添加用户&#xff08;demodeom&#xff09; sudo adduser demodeom将 demodeom 添加到 sudoer 文件 sudo visudo在文件末尾添…

2023五一赶制个人系统:基于SpringBoot+MyBatisPlus+Vue+ElementUI前后端分离

小钊记前言 &#x1f351;一、背景&#x1f351;二、调研准备阶段&#x1f34a;2.1、项目-自己搭建&#x1f353; 搭建步骤 &#x1f34a;2.2、项目需求-自己X造&#x1f34a;2.2、数据模型设计 &#x1f351;三、开发阶段&#x1f351;四、renxiaozhao 1.0.0-alpha发布&#x…

BPMN2.0 任务-服务任务

服务任务是任务的一种,工作由软件自动完成,比如一个Web服务或者一个自动化的应用。 服务任务用于调用服务。 在flowable中分为java服务任务,用于调用java类,web服务任务用于同步的调用外部的web服务。 在Camunda是通过调用java代码或者为外部执行者提供一个工作单元来完…