CSS(配合html的网页编程)

续上一篇博客,CSS是前端三大将中其中的一位,主要负责前端的皮,也就是负责html的装饰.

目录

一、基本语法规则

也就是:选择器+若干属性声明(选中一个元素然然后进行属性声明)

CSS代码是放在style标签中,它可以放在head中也可以放在body中 ,可以放到代码的任意位置.

CSS(配合html的网页编程)
  1. color

也就是设置想要输入文字的颜色.是在style标签中完成.

语法格式:
CSS(配合html的网页编程)

这里p的意思是,所有的p(段落)标签里的内容都会换成红色

比如说这段代码:

CSS(配合html的网页编程)

两段用p标签输出的文字都会变成红色,如下图:

CSS(配合html的网页编程)

此处这里的p+{ }就是一个选择器.{ }中的CSS属性,可以是一个或者多个,每个属性都是一个键值对.键和值之间使用:进行分割.键值对之间使用;分割.每个键值对可以独占一行,也可以不独占.

2.font-size(字体大小)

使用font-size 在p{ }中添加字体大小属性

CSS(配合html的网页编程)

展现形式:

CSS(配合html的网页编程)

3.CSS写法

目前有三种CSS的写法:
  1. 内部样式:使用style标签,直接把CSS写到html文件里(一般建议放大head标签里).

  1. 内联样式:使用style属性,针对指定的元素设置样式(此时不需要选择器,直接写成键值对形式),这个实行样式只针对当前元素生效.

比如:

CSS(配合html的网页编程)

也能实现要求:

CSS(配合html的网页编程)

注意:内联样式的优先级高于外部样式.

3.外部样式:把CSS代码单独作为一个.css文件,再通过link属性,让html引入该CSS文件.

也就是新建一个.css文件,将内容写在里面

CSS(配合html的网页编程)

然后在目标html文件中link 这个.css文件:(用相对路径表现形式)

CSS(配合html的网页编程)

表现形式跟上面两个都是一样的:

CSS(配合html的网页编程)

在我们的实际开发中,都是使用外部样式来写CSS文件,让html和css文件分离开,解耦合.但是当前阶段我们以内部样式为主.

二、CSS选择器

  1. 标签选择器

在{ }前面写标签的名字,此时意味着会选中所有指定的标签.

CSS(配合html的网页编程)

此时就意味着所有的p标签被选中了!!!而其他标签不受影响

CSS(配合html的网页编程)
  1. 类选择器(更好的选择.可以创建CSS类,手动指定哪些元素应用这个类)

注意:这个类和Java中的类没有关系!!!

此处的类其实就是给一组相同的CSS属性起了个名字,然后让需要的标签引用而已.

CSS(配合html的网页编程)

展现形式:

CSS(配合html的网页编程)

定义类需要使用 . 开头,而通过class引用这个类的时候"class=类名"则不用带' . '.一个类可以应用多个类,也可以引用一个类.很灵活!!!

这是就引入了"层叠"这个概念,也就是一个元素是可以被应用多组样式的,而这些样式就好像一层一层的叠加上去的.

类选择器也是平时使用最为频繁的选择器.

  1. ID选择器

html页面中的每个元素,都是可以设置唯一的ID的.作为元素的身份识别标识.

给元素设置完ID后,我们就 可以通过ID来选中元素

CSS(配合html的网页编程)

在div标签中指定id,在style标签中用 # 引用id然后设置元素.

类选择器是可以让多个元素应用同一个类的.而id选择器则只能支队唯一的元素生效.因为一个页面中只能有一个唯一id.

上面的选择器都被称为基础选择器,而符合选择器就是把基础选择器的功能进行了一下组合,下面将为大家介绍:

4.后代选择器(可以是标签,类,id选择器的任意组合)

CSS(配合html的网页编程)

就比如说上述代码,我只是想要ul里的li进行放大处理.就可以直接选择ul li{ }进行设定.

这就叫后代选择器.

展现形式如下:

CSS(配合html的网页编程)

注意:这里的li只要是ul的后代即可,不需要一定是ul的"子元素"(也就是li是ul的孙子、重孙子都可以)

5.子选择器

子选择器也是可以把多个基础选择器进行组合,但子选择器只是找匹配的子元素,不会去找匹配的孙子等元素.

语法格式:
CSS(配合html的网页编程)

意思就是在指定的one中只找li的字标签

引用时需要让对应标签class=类名

CSS(配合html的网页编程)
展现形式是:
CSS(配合html的网页编程)

这里区分一下后代选择器和子选择器:

CSS(配合html的网页编程)

比如此时第一个a就是儿子,而第二个a孙子,而后代选择器就会选中所有的a:

CSS(配合html的网页编程)

如果在这里使用子选择器:

CSS(配合html的网页编程)

被选中的就只有第一个儿子a了:

CSS(配合html的网页编程)

6.并集选择器

语法形式:

选择器1:选择器2{

属性……

}

就是多组选择器应用了同样的样式

具体表现形式:
CSS(配合html的网页编程)
展现形式是:
CSS(配合html的网页编程)

7.伪类选择器(符合选择器的特殊用法)

前面的选择器是选中某个元素的,而伪类选择器是选中某个元素的特定状态.

常用状态为:

:hover 指鼠标悬停时候的状态

:active 指鼠标按下时的状态

CSS(配合html的网页编程)

比如这样一段代码,意义就是在鼠标悬停的时候变红,在点击的时候变绿.

CSS(配合html的网页编程)
CSS(配合html的网页编程)
CSS(配合html的网页编程)

这就是伪类选择器的用法.

三、CSS的常用属性

  1. 字体属性

设置字体家族,也就是font-family,当前我们要是用哪种字体.

常用的字体:'微软雅黑'.'宋体'.'黑体'.'华文行楷'等

CSS(配合html的网页编程)

类似这样的使用方式,表现形式是:

CSS(配合html的网页编程)

注意:这个属性指定的字体,必须得是系统已经安装了的.如果要指定特殊的字体一般是通过浏览器请求对应的服务器,获取到指定文字的文件,才能设置.

2.设置字体大小

之前用过很多次了,就是font-size,如果你设置的字体大小和实际的大小不一样,可能和桌面和浏览器的缩放功能有关系!!!

3.字体粗细

使用font-weight来进行设置

设置的时候有两种风格:
  1. 使用单词来设置

  1. 使用数字来设置

CSS(配合html的网页编程)

可以利用上面的方格中的四类单词,也可以直接填写一个数字.

CSS(配合html的网页编程)

展现形式是:

CSS(配合html的网页编程)

4.文字样式

就跟html博客中讲的i和iml一样都是倾斜的效果

代码展现是:
CSS(配合html的网页编程)

具体展现形式是:

CSS(配合html的网页编程)

要想要回复倾斜就是

CSS(配合html的网页编程)
CSS(配合html的网页编程)

5.文本颜色

就是color,计算机的颜色都是由三原色:红绿蓝组合而成的.三种颜色等比例混合形成的是白色.

在前端中,给每个RGB各分配一个字节,每个字节的范围都是0-255/00-FF

CSS(配合html的网页编程)
展现形式是:
CSS(配合html的网页编程)

通过这三个分量不同比例的调配,就调和出不同的颜色

另外,也可以通过英文单词来表示颜色.

6.左右对齐

对齐分为靠左靠右居中对齐.

利用test-align进行对齐的操控

代码展示:
CSS(配合html的网页编程)
展现形式是:
CSS(配合html的网页编程)

左 left

右right

中 center

7.文本装饰

利用text-decoration:进行文本装饰.

总共有这四个:

CSS(配合html的网页编程)
代码展示:
CSS(配合html的网页编程)
展现形式是:
CSS(配合html的网页编程)

有的时候有些标签是默认自带下划线的,这时可以使用none去除下划线,就比如a标签:

CSS(配合html的网页编程)

使用none可以去除a标签中原本的下划线.

CSS(配合html的网页编程)

8.文本缩进和行间距

每个段落,首行缩进两个字符.

利用test-indent进行文字缩进的控制.

CSS(配合html的网页编程)
CSS(配合html的网页编程)

这里的缩进距离大概就是一个字大小的两倍,但这样很麻烦,所以有一种方式可以直接进行方便的首行2缩进:

CSS(配合html的网页编程)

em是会根据文字大小进行自主的调整的.

行高=文字高度+行间距

CSS(配合html的网页编程)

行高其实就是上一行的顶线到下一行的顶线的距离.

行高利用line-height进行设置.

CSS(配合html的网页编程)
展现形式:
CSS(配合html的网页编程)

注意:可以利用浏览器的开发者工具进行行高的调整

CSS(配合html的网页编程)

9.背景属性

背景颜色调整:使用background-color
CSS(配合html的网页编程)
展现形式:
CSS(配合html的网页编程)

背景图片:使用background-image:url(图片路径,可以使绝对路径也可以是相对路径)
CSS(配合html的网页编程)

展现形式:

CSS(配合html的网页编程)

这是我们发现我们的图片是不完全的,如果想要让图片展示完全,需要扩大div的尺寸:

CSS(配合html的网页编程)

直接设置height就可以扩大尺寸.

CSS(配合html的网页编程)

我们缩小比例,发现其实在这里平铺好多个这样的图片:

CSS(配合html的网页编程)
如果想要取消平铺:
CSS(配合html的网页编程)

这样就不会发生平铺了!!!

CSS(配合html的网页编程)
此时虽然不发生平铺了,但是居于屏幕的左上角,我想让图片居中:
CSS(配合html的网页编程)

此时图片就居中了:

CSS(配合html的网页编程)
这是垂直居中:
CSS(配合html的网页编程)

展现形式是:

CSS(配合html的网页编程)
这是靠上居中:
CSS(配合html的网页编程)

展现形式是:

CSS(配合html的网页编程)
这是靠下居中:
CSS(配合html的网页编程)

展现形式是:

CSS(配合html的网页编程)

或者直接使用具体坐标去设置位置:
CSS(配合html的网页编程)

注意,计算机里的坐标系原点是在左上角!!!

CSS(配合html的网页编程)

另外,还可以设置背景图的大小:
CSS(配合html的网页编程)

展现形式是:

CSS(配合html的网页编程)

还有一些单词类型的大小属性:

contain:

CSS(配合html的网页编程)
CSS(配合html的网页编程)

就是让这张图在它原本的比例之下尽可能的大.

cover:

CSS(配合html的网页编程)
CSS(配合html的网页编程)

就是让这张图片在你的屏幕中尽可能的进行伸展.

10.圆角矩形

html的元素默认都是一个个的矩形,但大多数的时候都是需要"带有圆角"的矩形.

首先准备一个矩形:
CSS(配合html的网页编程)
展现形式是:
CSS(配合html的网页编程)

利用border-radius设置圆角矩形:
CSS(配合html的网页编程)
CSS(配合html的网页编程)

注意:这里的10px是指边角的内切圆的大小

CSS(配合html的网页编程)

当这个图形的长和宽一致的时候,此时这个图形是一个正方形,如果此时将圆角设置为和长宽一致的时候,此时就是一个圆形!!!

CSS(配合html的网页编程)

11.元素的显示模式

display

display:block; 块级元素

display:inline; 行内元素

任何一个元素的(块级/行内)元素都是可以设置的.

块级元素和行内元素的区别:
  1. 块级元素独占一行,行内元素不独占一行.

  1. 块级元素的长度、高度、内外边距都是可以自己设置的.而行内元素的高度宽度无效.内边距有效,

  1. 块级元素默认宽度是和父元素一样宽.行内元素默认是和里面的内容一样宽的.

我们要知道:块级元素比较正常,行内元素幺蛾子比较多,一般来说都是把行内元素转换成块级元素

12.CSS盒子模型

CSS(配合html的网页编程)

CSS盒子模型讲的其实就是:任何一个heml元素都是一个矩形的盒子盒子里面可以放内容.(可以使文本,其他元素).

如上图,一个"盒子"分为内容、内边距、边框、外边距.

我们就可以使用CSS来设置上述四部分的属性!!!

边框:

border属性.直接设置了四个方向.

还可以使用:

border-left;

border-right;

border-top;

border-bottom;

另外,设置边框要设置三个方面:
  1. 边框的粗细

  1. 边框的颜色

  1. 边框的风格

比如这里:
CSS(配合html的网页编程)
展现形式就是:
CSS(配合html的网页编程)
CSS(配合html的网页编程)
我们看这个边框的数据,发现不是之前指定的200*100了,所以我们得出了一个结论:

边框在默认条件下会撑大盒子.(也就是说那个height和width设定的是内容的大小,不加边框)

但是大多数时候我们不想要边框撑大盒子,所以就有了一个专门的属性来防止盒子被撑大:

CSS(配合html的网页编程)
CSS(配合html的网页编程)

这样就是标准的200*100了.

solid:实线

dashed:虚线

CSS(配合html的网页编程)

dotted:点线

CSS(配合html的网页编程)

内边距:

在没有内边距的时候,内边距是默认为0px的.

如果设置了内边距:
CSS(配合html的网页编程)
展现形式就是:
CSS(配合html的网页编程)

另外,上下内边距都是可以分别设置的:

CSS(配合html的网页编程)

还可以进行四个方向的内边距距离设置:(上右下左顺时针设置)

CSS(配合html的网页编程)

外边距:

利用margin设置外边距:

CSS(配合html的网页编程)

此时,两个边框之间就有了5px的外边距了!!!

CSS(配合html的网页编程)
另外margin的各种属性和padding一模一样!!!
margin有一个特殊用法:把margin-left和margin-right设置为auto(就是让浏览器自动设置).

此时该元素就是在父类元素里能够实现居中放置!!!

CSS(配合html的网页编程)
CSS(配合html的网页编程)

但是垂直方向设置居中却是无效的!!!这也是CSS的一个特殊规则.

四、弹性布局

用来实现页面布局的,也就是控制某个元素放到指定的位置上去.

1.布局的历史

最初的html中压根就没有考虑"布局"的问题,知道人们开始对网站的审美有了一定的要求后:
  1. 基于表格的布局方式

  1. 基于浮动的布局方式.主要解决"水平方向排序"问题.(块级元素默认就是垂直方向排列的问题,因为其独占一行)

  1. 弹性布局,也是解决水平方排列的问题.相比来说它的功能更多,也没啥坑.

  1. 网格布局.是一个二维的布局,既考虑水平也考虑垂直(但是诞生时间尚短导致一些老浏览器不兼容.)

所以说现今市面上最为流行的还是弹性布局!!!

2.设置弹性布局

首先准备两个div:

CSS(配合html的网页编程)
CSS(配合html的网页编程)

然后将display:flex设置在父类元素中:

CSS(配合html的网页编程)

此时,这三个子类元素围绕父类元素水平铺开,遵守了弹性布局!!!

CSS(配合html的网页编程)

3.设置这些元素水平方向的排列方式

CSS(配合html的网页编程)

利用这个属性进行水平方向的排列方式控制:

flex-start:

靠左排列

CSS(配合html的网页编程)
CSS(配合html的网页编程)

flex-end:

靠右排列

CSS(配合html的网页编程)
CSS(配合html的网页编程)

conter:

靠中排列

CSS(配合html的网页编程)
CSS(配合html的网页编程)

space-around:

空白环绕

CSS(配合html的网页编程)
CSS(配合html的网页编程)

4.设置元素垂直方向的排列方式

align-items

CSS(配合html的网页编程)

也是必须添加在父类中的属性!!!

align-items:flex-start

靠上排序

CSS(配合html的网页编程)

align-items:flex-on

靠下排序

CSS(配合html的网页编程)
CSS(配合html的网页编程)

align-items:center

垂直方向:

CSS(配合html的网页编程)
CSS(配合html的网页编程)

到这里我们常用的CSS就讲的差不多了,但是注意CSS并不只是只有这些内容,想要知道更多可以自主去查官方文档.

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
乘风的头像乘风管理团队
上一篇 2023年2月23日 上午9:05
下一篇 2023年2月23日 上午9:06

相关推荐