领先的免费Web技术教程,涵盖HTML到ASP.NET

网站首页 > 知识剖析 正文

CSS是什么?这一篇全解,绝对有你想要的

nixiaole 2025-02-15 16:50:14 知识剖析 17 ℃

简介

CSS 是什么?

CSS是Cascading Style Sheets的简称,中文称为层叠样式表。

属性和属性值用冒号隔开,以分号结尾。

CSS 四种引入方式:

1.行内式

行内式是在标签的style属性中设定CSS样式。

2.嵌入式

嵌入式是将CSS样式集中写在网页的标签的标签对中。



????...

????

????????...此处写CSS样式

????

3.导入式
将一个独立的.css文件引入HTML文件中,导入式使用@import 引入外部CSS文件,

4.链接式
将一个独立的.css文件引入到HTML文件中,使用标记写在标记中。

链接式会以网页文件主体装载前装载CSS文件。



????...

????



样式应用顺序:

  • 行内样式优先级最高
  • 针对相同的样式属性,不同的样式属性将以合并的方式呈现
  • 相同样式并且相同属性,呈现方式在中的顺序决定,后面会覆盖前面属性
  • !important 指定样式规则应用最优先
.nick {
????color: yellow !important;
}

选择器(Selector)

基本选择器:

1.通用元素选择器

* 表示应用到所有的标签。

* {color: yellow}

2.标签选择器

匹配所有使用 div 标签的元素(可以匹配所有标签)

div {color: yellow}

3.类选择器

匹配所有class属性中包含info的元素。

语法:.类名{样式}(类名不能以数字开头,类名要区分大小写。)

.Mycolor {color: yellow}
nick

4.ID选择器

使用id属性来调用样式,在一个网页中id的值都是唯一的(是W3C规范而不是规则,所以不会报错)。

语法:#ID名{样式}(ID名不能以数字开头)

#Mycolor {color: yellow}
Nick.

组合选择器:

1.多元素选择器

同时匹配h3,h4标签,之间用逗号分隔。

h3,h4 {color: yellow;}

Nick

Jenny

2.后代元素选择器

匹配所有div标签里嵌套的P标签,之间用空格分隔。

????div p {color: yellow;}
????

Nick

????
????????

Nick

????

3.子元素选择器

匹配所有div标签里嵌套的子P标签,之间用>分隔。

????div > p {color: yellow;}
????

Nick

????

Nick

4.毗邻元素选择器

匹配所有紧随div标签之后的同级标签P,之间用+分隔(只能匹配一个)。

????div + p {color: yellow;}
Nick

Nick

属性选择器:

1.[title] & P[title]

设置所有具有title属性的标签元素;

设置所有具有title属性的P标签元素。

????[title]
????{
????????color: yellow;
????}
????p[title]
????{
????????color: yellow;
????}
?
Nick
Nick

2.[title=Nick]

设置所有title属性等于“Nick”的标签元素。

????[title="Nick"]
????{
????????color: yellow;
????}
Nick

3.[title~=Nick]

设置所有title属性具有多个空格分隔的值、其中一个值等于“Nick”的标签元素。

????[title~="Nick"]
????{
????????color: yellow;
????}
Nick

Nick

4.[title|=Nick]

设置所有title属性具有多个连字号分隔(hyphen-separated)的值、其中一个值以"Nick"开头的标签元素。

例:lang属性:"en"、"en-us"、"en-gb"等等

????[title|="Nick"]
????{
????????color: yellow;
????}
?Nick

5.[title^=Nick]

设置属性值以指定值开头的每个标签元素。

????[title^="Nick"]
????{
????????color: yellow;
????}
Nick

6.[title$=Nick]

设置属性值以指定值结尾的每个标签元素。

????[title$="Nick"]
????{
????????color: yellow;
????}
Nick

7.[title*=Nick]

设置属性值中包含指定值的每个元素

[title*="Nick"]
    {
        color: yellow;
    }
 

Nick

伪类选择器:

1. link、hover、active、visited

????a:link{color: black}
????a:hover{color: yellow}
????a:active{color: blue}
????a:visited{color: red}?
Nick

2. before、after

????p {
????????color: yellow;
????}
????p:before{
????????content: "before...";
????}
????p:after{
????????content: "after...";
????}
?

Nick

  

常用属性

1. 颜色属性:

color

transparent

opacity

2. 字体属性:

font-style: 用于规定斜体文本

font-weight: 设置文本的粗细

font-size: 设置字体的大小

font-family:字体名称

font:简写属性

3. 文本属性:

white-space: 设置元素中空白的处理方式

direction: 规定文本的方向

text-align: 文本的水平对齐方式

line-height: 文本行高

vertical-align: 文本所在行高的垂直对齐方式

text-indent: 文本缩进

letter-spacing: 添加字母之间的空白

word-spacing: 添加每个单词之间的空白

text-transform: 属性控制文本的大小写

text-overflow: 文本溢出样式




????
????Title
????
????


????
索宁 索宁 索宁 索宁 索宁 索宁 索宁 索宁 索宁 索宁 索宁 索宁 索宁 索宁 索宁 索宁 索宁 索宁 索宁 索宁

text-decoration: 文本的装饰

text-shadow:文本阴影

word-wrap:自动换行




????
????Title
????


????

????????When you are old and grey and full of sleep,And nodding by the fire, take down this book,And slowly read, and dream of the soft look ????

????

索宁

    
a {
    text-decoration: none;
    /*去除a标签下划线*/
}

4. 背景属性

background-color: 背景颜色

background-image 设置图像为背景

background-position 设置背景图像的位置坐标

background-repeat 设置背景图像不重复平铺

background-attachment 背景图像是否固定或者随着页面的其余部分滚动

background 简写

5. 列表属性

list-style-type: 列表项标志的类型

list-style-image:将图象设置为列表项标志

list-style-position:列表项标志的位置

list-style:缩写

页面布局

1. 边框

border-style:边框样式

border-color:边框颜色

border-width:边框宽度

border-radius:圆角

border: 简写

box-shadow:边框阴影




????
????Title
????


????
?????????点赞哦!dear.? ????



????
????Title
????


????
???????? ???????? ???????? ???????? ????

边框实现各种三角符号:




????
????Title
????


????
????
???? ???? ???? ???? ???? ????



????
????Title
????


????
????????妹子求关注 ^.^
????????
????

2.★ 盒子模型

一个标准的盒子模型:

padding:用于控制内容与边框之间的距离;

margin: 用于控制元素与元素之间的距离;

一个参数,应用于四边。

  两个参数,第一个用于上、下,第二个用于左、右。

  三个参数,第一个用于上,第二个用于左、右,第三个用于下。

边框在默认情况下会定位于浏览器窗口的左上角,但是并没有紧贴着浏览器的窗口的边框,这是因为body本身也是一个盒子,外层还有html,
在默认情况下,body距离html会有若干像素的margin,所以body中的盒子不会紧贴浏览器窗口的边框了。

解决方法:
body {
    margin: 0;
}

3.★ display

4. visibility

5.★ float 浮动

让一行显示两个块级标签,会脱离文档流

clear 清除浮动:

6. clip 剪裁图像

rect 剪裁定位元素:

7. overflow 设置当对象的内容超过其指定高度及宽度时如何显示内容

8.★ position 规定元素的定位类型

9. z-index 元素层叠顺序




????
????Title
????


????
????

10. outline 边框轮廓

11. zoom 缩放比例




????
????Title
????


????Nick 100%
????Nick 200%
????Nick 300%

12. cursor 鼠标的类型形状

鼠标放在以下单词上,There will be a miracle:

url: 自定义光标




    
    Title
    
    


    

Auto: 默认
Default: 默认
e-resize
ne-resize
nw-resize
n-resize
se-resize
sw-resize
s-resize
w-resize
Crosshair
Pointer
Move
text
wait
help

not-allowed

13. transform、transition 动画效果

transform 转换,变形




????
????nick
????
????
????????div {
????????????border: 1px solid black;
????????????height: 30px;
????????????width: 30px;
????????????background-color: yellow;
?
????????????/*transform-origin: 50px 50px;*/
????????????transform-origin: left;
????????????transform: rotate(50deg);
????????????/*transform: skew(50deg,50deg);*/
????????????/*transform: translate(50px,50px);*/
????????????/*transform: scale(2);*/
????????}
????


????


Transition 平滑过渡

#property 指定属性对应类型

1、color: 通过红、绿、蓝和透明度组件变换(每个数值单独处理),如:background-color,border-color,color,outline-color等CSS属性;

2、length:真实的数字,如:word-spacing,width,vertical- align,top,right,bottom,left,padding,outline-width,margin,min-width,min- height,max-width,max-height,line-height,height,border-width,border- spacing,background-position等属性;

3、percentage:真实的数字,如:word-spacing,width,vertical- align,top,right,bottom,left,min-width,min- height,max-width,max-height,line-height,height,background-position等属性;

4、integer 离散步骤(整个数字),在真实的数字空间,以及使用floor()转换为整数时发生,如:outline-offset,z-index等属性;

5、number真实的(浮点型)数值,如:zoom,opacity,font-weight等属性;

6、transform list。

7、rectangle:通过x、 y、 width和height(转为数值)变换,如:crop;

8、visibility:离散步骤,在0到1数字范围之内,0表示“隐藏”,1表示完全“显示”,如:visibility;

9、shadow:作用于color、x、y、和blur(模糊)属性,如:text-shadow;

10、gradient:通过每次停止时的位置和颜色进行变化。它们必须有相同的类型(放射状的或是线性的)和相同的停止数值以便执行动画,如:background-image;

11、paint server (SVG):只支持下面的情况:从gradient到gradient以及color到color,然后工作与上面类似;

12、space-separated list of above:如果列表有相同的项目数值,则列表每一项按照上面的规则进行变化,否则无变化;

13、a shorthand property:如果缩写的所有部分都可以实现动画,则会像所有单个属性变化一样变化。
#支持执行transition效果的属性

Property Name    Type
background-color    as color
background-position    as repeatable list of simple list of length, percentage, or calc
border-bottom-color    as color
border-bottom-width    as length
border-left-color    as color
border-left-width    as length
border-right-color    as color
border-right-width    as length
border-spacing    as simple list of length
border-top-color    as color
border-top-width    as length
bottom    as length, percentage, or calc
clip    as rectangle
color    as color
font-size    as length
font-weight    as font weight
height    as length, percentage, or calc
left    as length, percentage, or calc
letter-spacing    as length
line-height    as either number or length
margin-bottom    as length
margin-left    as length
margin-right    as length
margin-top    as length
max-height    as length, percentage, or calc
max-width    as length, percentage, or calc
min-height    as length, percentage, or calc
min-width    as length, percentage, or calc
opacity    as number
outline-color    as color
outline-width    as length
padding-bottom    as length
padding-left    as length
padding-right    as length
padding-top    as length
right    as length, percentage, or calc
text-indent    as length, percentage, or calc
text-shadow    as shadow list
top    as length, percentage, or calc
vertical-align    as length
visibility    as visibility
width    as length, percentage, or calc
word-spacing    as length
z-index    as integer


鼠标放在以下图片上,There will be a miracle:




    
    nick
    
    


    

作者:suoning

原文链接:
https://www.cnblogs.com/suoning/p/5625582.html

Tags:

最近发表
标签列表