30
社区成员
发帖
与我相关
我的任务
分享<p style="color:blue;front-size:20px;">这是一个段落.</p>
<body style="background-color:yellow;">
<h2 style="background-color:red;">这是一个标题</h2>
<p style ="background-color:green;">这是一个段落</p>
</body>
<h1 style="font-family:verdana;">这是一个标题</h1>
<p style="font-family:arial;color:red;font-size:20px;">一个段落.</p>
<!--verdana和arial是一种字体的名字,px是像素,网页最基础长度单位—->
<h1 style="text-align:center;">居中对齐的标题</h1>
<p>这一个段落</p>
<head>
<style type="text/css">
body{background-color:yellow;}
p{color:blue;}
</style>
</head>
style标签用来专门包裹css样式代码;css语法:选择器{属性:值;}h1{
color:green;
font-size:80px;
}
<!--CSS-->
<link rel="stylesheet" href="./position3.css">
<head>
<link rel="stylesheet" type="text/css" href="./mystyle.css">
</head>
| 选择器 | 声明块 |
|---|---|
| h1 | {color:green;font-size:40 px;} |
| 该声明块中有两个声明,声明由属性名和属性值组成,一个声明就是一个具体的样式;多个声明组成一个声明块。 |
h1 {
color: red;
font-size: 40px;
}
h1{color: red;font-size:40px;}
项目上线时,通过工具be like: webpack,将展开风格的代码变成紧凑风格的代码。
基本选择器:
1.通配选择器
2.元素选择器
3.类选择器
4.id选择器
*{
属性名: 属性值;
}
标签名 {
属性名: 属性值;
}
类选择器中的类,就是分类的意思 class,所以class又被称为类名
.类名{
属性名:属性值;
}
*id值{
属性名: 属性值;
}
交集有并且的含义
所谓并集就是或者的含义
#suxi,
.rich,
.beauty,
.dog,
.pig {
font-size: 40px;
background-color: cadetblue;
width: 180px;
}
选择器之间,用空格隔开,空格可以理解成“...中的”,其实在这里就是后代的意思,选择器12345..n可以任意类型选择器
ul li {
color: blue;
}
/* ul中的li ul里的后代li*/
ul li a {
color: rgb(98, 163, 164);
}
ol li {
color: rgb(182, 110, 250);
}
ol li a {
color: rgb(165, 104, 104);
}
.subject li.front-end{
color="blue";
}
// 选中类名为subject元素中的所有类名为front-end的li
作用:选中指定元素中,符合要求的子元素(儿子元素)。先写父,再写子
子代选择器又称为子元素选择器,子选择器
语法: 选择器1>选择器2>选择器3>....选择器n{}
选择器之间用>隔开,大于号可以理解为是“XXX的子代“,即儿子的意思,选择器是任意类型的选择器
div>a{
color: red;
}
.person>a{
color:red;
}
注意:
1.子代选择器,最终选择的是子代,不是父级
2.子,孙子,重孙子,,,都是后代,子就是指儿子
相邻兄弟选择器:
通用兄弟选择器:
注意:这两种兄弟选择器,选择的都是下面的兄弟
div+p{ //选中div后紧紧相邻的兄弟p元素
color: red; //div紧紧挨着的p标签
}
div ~p{ //选中div后面所有的兄弟元素
color: red;
}
li+li{
color: red; // li+li=li~li;表示第一个li标签下面的所有兄弟标签--
}
语法:
//第一种写法:选中具有title属性的元素
[title]{
color:red;
}
//第二种写法:选中具有title属性,且属性值为atguigu1的元素
[title="atguigu1"]{
color:red;
}
//第三种写法:选中具有title属性,且属性值以a开头的元素
[title^="a"]{
color:red;
}
//第四种写法:选中具有title属性,且属性值以u结尾的元素
[title$="u"]{
color:red;
}
//第五种写法:选中具有title属性,且属性值中有u的元素
[title*="u"]{
color:red;
}
语法:
//第一种写法:选中具有title属性的元素
[title]{
color:red;
}
//第二种写法:选中具有title属性,且属性值为atguigu1的元素
[title="atguigu1"]{
color:red;
}
//第三种写法:选中具有title属性,且属性值以a开头的元素
[title^="a"]{
color:red;
}
//第四种写法:选中具有title属性,且属性值以u结尾的元素
[title$="u"]{
color:red;
}
//第五种写法:选中具有title属性,且属性值中有u的元素
[title*="u"]{
color:red;
}
| 优先级从高到低 | |||||
|---|---|---|---|---|---|
| 行内 | ID选择器 | 类选择器 | 元素选择器 | 通配选择器 |
| 权重计算依据![[Pasted image 20260724171906.png|327]] | 例子:
| 结果:![[Pasted image 20260724172334.png|173]] |
|---|---|---|
| 比较每一个优先级的数的大小 |
ps:
| 代码 | ||
|---|---|---|
| 注意,这里不是在类后面加上important,而是在颜色后面加上的important |
| |
|---|---|
|
<div>
<h1> hello!</h1>
<ul>
<li>前端</li>
<li>Java</li>
<li>大数据</li>
<li>UI</li>
</ul>
</div>
什么是样式冲突?——元素的同一个样式名,被设置了不同的值,产生冲突
| 冲突: | ||
|---|---|---|
| ![[Pasted image 20260725094224.png|216]] | ps:内部样式和外部样式是平级的;遵循后来者先上原则 |
text=?? font=?? line=?? color....
计算权重时需要注意:并集选择器的每一个部分都是分开计算的
生活的长度单位km,m等不能代替网页中的px像素单位,网页无法识别;
cm,mm可以被识别,产生效果;微米,纳米无法识别。
但是在网页中使用cm,mm,是不够精细的,二者之间的跨度差距太大,精度不满足网页设计要求,于是产生了像素。
| 表示方式 | 代码 | tips | |
|---|---|---|---|
| 颜色名 |
| 这种方式用的并不多,因为很有限,并且不是很精确;具体颜色名参考MDN网站 | |
| rgb或rgba |
| rgb:red,green,blue;这三种是光(三个手电筒)的三原色(与颜料三原色区分); | |
| (0,0,0)关灯——黑色;(255,255,255)全开到最大——白色 | ||
| rgba:a是控制透明度;eg:a=0.5意思是半透明,0是完全透明,1是完全不透明。观感上越透明越淡;0.5也可以写作.5 | ||
| HEX或HEXA |
| 两位一组,十六进制表示,表示范围0~255;本质和rgb差不多 | |
| ![[Pasted image 20260725112246.png|142]] | 当三组颜色值内部均重复时,eg:ffccdd
可以简写成以上形式,若添加透明度,透明度也必须是一位。 | ||
| HEXA中的A和rgba中的a类似,取值也是0~255,代表透明度;这里的字母不区分大小写 | |||
| HSL或HSLA |
| hue:色相;用角度表示色相;写作 0 deg(deg可以省略) | ![[Pasted image 20260725113119.png|175]] |
| saturation:饱和度 (黑白)0%~100%(彩色) | ||
| lightness:亮度 (关灯)0%~100%(非常亮) | |||
| a透明度:0~1 |
html
<ul>
<li>
<a href="???">《震惊!两男子竟然在教室做出这种事》</a>
</li>
<li>《好心态决定女人的一生》 </li>
<li>《给成功男人的五条建议》</li>
</ul>
css
ul{
list-style-type: none;
/*列表-格式-类型*/
list-style-position: inside;
/*列表-格式-位置*/
list-style-image:url("路径");
/*自定义列表符号*/
list-style:decimal inside url("路径")
/*复合属性*/
}
| 属性名 | 属性值 | 对应功能 | |
|---|---|---|---|
| type: | none | 不显示前面的表示(常用) | |
| ^ | square | 实心方块 | |
| ^ | disc | 圆形 | |
| ^ | decimal | 数字 | |
| ^ | lower-roman | 小写罗马数字 | |
| ^ | upper-roman | 大写罗马数字 | |
| ^ | lower-alpha | 小写字母 | |
| ^ | upper-alpha | 大写字母 |
| 属性名 | 属性值 | 对应功能 |
|---|---|---|
| position: | inside | 在li的里面 |
| ouside | 在li的外面 |
html
<caption>人员信息</caption>
<thead>
<tr> <!--行-->
<th>序号</th> <!--列-->
<th>姓名</th>
<th>年龄</th>
<th>性别</th>
<th>政治面貌</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>张三</td>
<td>18</td>
<td>男</td>
<td>中共党员</td>
</tr>
<tr>
<td>2</td>
<td>李四</td>
<td>19</td>
<td>女</td>
<td>团员</td>
</tr>
<tr>
<td>3</td>
<td>王五</td>
<td>20</td>
<td>男</td>
<td>群众</td>
</tr>
<tr>
<td>4</td>
<td>赵六</td>
<td>21</td>
<td>女</td>
<td>中共党员</td>
</tr>
</tbody>
<tfeet>
</tfeet>
css(1)
<style>
table {
border-width: 2px;
/* 线的宽度 */
border-color: aquamarine;
/*指明线的颜色*/
border-style: dashed;
/*指明线的形式*/
}
</style>
css(2)
<style>
table{
border:2px green soild;
}
/*表格相关*/
td,th{
border:2px orange soild;
}
/*单元格相关*/
</style>
| CSS属性名 | 功能 | 属性值 |
|---|---|---|
| border-width | 边框宽度 | CSS中可用的长度值 |
| border-color | 边框颜色 | CSS中可用的颜色值 |
| border-style | 边框风格 | none 默认值 |
| ^ | ^ | solid 实线 |
| ^ | ^ | dashed 虚线 |
| ^ | ^ | dotted 点线 |
| ^ | ^ | double 双实线 |
| border | 边框复合属性 | 没有数量,顺序的要求 |
css
<style>
table {
border: 2px green solid
width: 500px;
/*控制表格列宽*/
table-layout: fixed;
/*控制单元格间距*/
border-spacing: 0px;
/*合并相邻单元格的边框*/
border-collapse: collapse;
/*隐藏没有内容的单元格*/
empty-cells: hide;
/*设置表格标题的位置*/
caption-side: top;
}
td,
th {
border: 2px orange solid;
}
.number {
width: 50px;
}
</style>
| CSS属性名 | 功能 | 属性值 |
|---|---|---|
| table-layout | 设置列宽度 | auto:自动,列宽根据内容计算(默认值) |
| ^ | ^ | fixed:固定列宽,平均分 |
| border-spacing | 单元格间距 | CSS中可用的长度值。 |
| ^ | ^ | 生效的前提:单元格边框不能合并 |
| border-collapse | 合并单元格边框 | collapse:合并 |
| ^ | ^ | separate:不合并 |
| empty-cells | 隐藏没有内容的单元格 | show:显示,默认 |
| ^ | ^ | hide:隐藏 |
| ^ | ^ | 生效前提:单元格不能合并 |
| caption-side | 设置表格标题位置 | top:上面(默认值) |
| ^ | ^ | bottom:在表格下面 |
CSS
body{
background-color: gray;
}
div{
width:400px;
height:400px;
border:2px black solid;
/*设置背景颜色,默认值是transparent*/
background-color: transparent;
/*设置背景图片*/
background-image:url(图片路径)
/*设置背景图片的重复方式*/
background-repeat:no-repeat;
/*控制背景图片的位置 (1)关键词写法*/
background-position:left top;
/*控制背景图片的位置 (2)像素值写法*/
background-position:10px 20px;
/*控制背景图片的位置 (2)像素值写法*/
background-position:300px; /*x轴上100px*/
/*复合属性*/
background:skyblue url(图片路径) no-repeat 300px;
}
| CSS属性名 | 功能 | 属性值 | |
|---|---|---|---|
| background-color | 设置背景颜色 | 符合CSS中颜色规范的值 | |
| ^ | ^ | 默认背景颜色是transparent(透明的) | |
| background-image | 设置背景图片 | url(图片地址) | |
| background-repeat | 设置背景重复方式 | repeat:重复,铺满整个元素,默认值 | |
| ^ | ^ | repeat-x:只在水平方向重复 | |
| ^ | ^ | repeat-y:只在垂直方向上重复 | |
| ^ | ^ | no-repeat:不重复 | |
| background-position | 设置背景图位置 | 通过关键字设置位置:写两个值,用空格隔开(如果只写一个值,另一个方向取center) | 水平:left center right |
| ^ | ^ | 垂直:top center bottom | |
| 通过长度指定坐标位置:以元素左上角为坐标原点,设置图片右上角的位置 | 两个值,分别是x坐标和y坐标(只写一个值,会被当做x坐标,y坐标取center) | ||
| background | 复合属性 | 没有数量和顺序要求 |
CSS
<style>
div {
width: 400px;
height: 400px;
background-color: aquamarine;
cursor:move;
}
</style>
HTML
<div>
把鼠标放进来看一看
<input type="text">
<a href="#">百度</a>
</div>
| CSS属性名 | 功能 | 属性值 |
|---|---|---|
| cursor | 设置鼠标光标的样式 | pointer:小手 |
| ^ | ^ | move:移动图标 |
| ^ | ^ | text:文字选择器 |
| ^ | ^ | crosshair:十字架 |
| ^ | ^ | wait:等待 |
| ^ | ^ | help:帮助 |
自定义鼠标图标:
cursor:url("路径").pointer;