CSS(层叠样式表)

图片格式

在这里插入图片描述

标签顺序


在这里插入图片描述


选择器与CSS属性

在这里插入图片描述

CSS的引入

在这里插入图片描述
用相对路径来找到 .css文件

选择器

标签选择器

在这里插入图片描述
标签名加{}即可对html中的标签进行更改,可以统一进行更改,但是缺乏差异化

类选择器

在这里插入图片描述

在style标签里面定义一个类 .classname,然后接上选择器,写上内容,在body内部的目标标签的属性栏中添加class属性,属性值是你定义的类名

id选择器

在这里插入图片描述

通配符选择器

在这里插入图片描述
在开发初期消除标签的默认效果,可以用这个

选择器的操作-画盒子

在这里插入图片描述

background系列的属性表示对背景整体的操作
比如我的学习网站插入背景图

.bjimg {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      min-width: 1000px;
      z-index: -10;
      zoom: 1;
      background-color: #fff;
      background-image: url(../image/timg.jfif) ;
      background-repeat: no-repeat;
      background-size: cover;
      -webkit-background-size: cover;
      -o-background-size: cover;
      background-position: center 0;
    }

字体修饰

在这里插入图片描述

文字阴影


text-shadow

在这里插入图片描述

font-size

  1. 单位是px(像素)

font-weight

  1. 设置粗细
  2. 属性值是数字
  3. 400-normal 700-加粗

font-style

  1. 字体倾斜
  2. 属性值是在这里插入图片描述

line-height

  1. 行间距,单位是像素,30px左右就OK
  2. 如果不加px,行间距就按照字体大小的n倍处理(n是你输入的数字)

在这里插入图片描述

字体族

在这里插入图片描述
在这里插入图片描述


复合属性

在这里插入图片描述


对齐与缩进

缩进:text-indent
在这里插入图片描述
对齐:text-align

在这里插入图片描述
这个玩意儿可以用在图片,视频居中上:


```html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>

    <style>
        div {
            text-align: right1;
        }
    </style>
</head>
<body>
    <div>
        <img src="../img/头像.jpg" alt="">
    </div>
</body>
</html>

文本修饰线

在这里插入图片描述



文字颜色

在这里插入图片描述

rgb-常用
rgba-a是不透明度
#+十六进制 — 是一种更加精准的调色方法,是前端设计师给的具体数字

调试工具

浏览器中,右键,检查即可
在这里插入图片描述
CSS中标签属性前面如果由黄色叹号,就是写错了

复合选择器

后代选择器

father son  {


}

在这里插入图片描述

会选中所有子标签,儿子、孙子、重孙子中的同名标签都会被选中

在这里插入图片描述

子代选择器

.class>h1
如果只想给儿子辈的标签添加属性,就在父子之间用 > 隔开

并集选择器

用逗号隔开,然后写属性即可
在这里插入图片描述

交集选择器

在这里插入图片描述

伪类选择器

  • 伪类:选择器中添加的关键字,用于表示选择器所指元素的特殊状态
  • CSS 伪类是添加到选择器的关键字,用于指定所选元素的特殊状态。-
    在这里插入图片描述
    拓展

在这里插入图片描述
2.
在这里插入图片描述




注意事项


在这里插入图片描述




# CSS特性(三个)

继承性

在这里插入图片描述

  • 当子级有自己的属性时,不会继承这个属性
    如:< a >默认颜色是蓝色,你对父级进行颜色定义时,不会改变他的颜色

层叠性

在这里插入图片描述

优先级

在这里插入图片描述

权重计算

*=0
标签=1
类=10
id=100
行内=1000
!important最大
在这里插入图片描述


在这里插入图片描述
先看有没有!important,再看有无继承,最后比较优先级个数

Emmet写法

这是一种简写的方法
符号有*+>{}等
在这里插入图片描述

Emmet在CSS中的用法是:输入首字母(或者缩写),然后直接写属性值;多个属性同时书写只需要+即可


背景属性

在这里插入图片描述




背景的平铺方式


平铺就是复制粘贴

在这里插入图片描述


插播盒子的制作方式

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .box {
            width: 9000px;
            height: 9000px;

        }
    </style>
</head>
<body>
    <div class="box"></div>
</body>
</html>



背景图的位置(相对于盒子)



在这里插入图片描述


背景缩放





在这里插入图片描述

背景图的固定


在这里插入图片描述

制作网页固定背景图

复合属性

在这里插入图片描述

显示模式

内容介绍


在这里插入图片描述

转换显示模式


在这里插入图片描述
能通过display把标签的显示模式改变




以下是banner(横幅练习的总结)

  1. 将网页划分为一个个块,这些块,作为父级,以此按照要求创建子级,对子级写CSS时用后代选择器,
  2. 利用好父子级的继承性,能省去一些麻烦
  3. 显示模式中inline-block才能使盒子与文字在同一行左右对齐,如果是block则文字只能在盒子内左右对齐
  4. 写CSS时,有一定的顺序会加强可读性



结构伪类选择器


解析

  1. 伪类,意思是所选标签特定状态下的样式,在该状态下就像你给它加了个类一样,比如 :hover
  2. 结构,指的是结构伪类(给特定结构下的HTML标签添加属性);hover是用户行为伪类(给执行特定用户行为时的HTML标签添加属性)

在这里插入图片描述


花活扩展

在这里插入图片描述
省力写法,提高效率

盒子模型


组成部分


在这里插入图片描述
具体书写方式:

  <style>
        div {
            background: #555;
            width: 200px;
            height: 200px;
            display: inline-block;
            padding: 10px;
            margin: 20px;
            border: 5px #eee;
        }
   </style>

具体细讲

border(边框线)

在这里插入图片描述



在这里插入图片描述

padding (内边距)

在这里插入图片描述



在这里插入图片描述按上左下右顺时针方向对号入座,如果没有入座,就按照对面的那个边的属性来

内减模式

在这里插入图片描述

外边距(margin)

在这里插入图片描述

版心居中

block的显示模式下,CSSstyle中margin的值是0 auto即可

清除默认样式style
默认情况下body、li、p、h1等标签都有自己的margin、padding属性,但我们不需要,所有要去除:用通配符选择器来去除
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>

    </style>
</head>
<body>
    <ul>
        <li>
            今天开始我要自己上厕所
        </li>
    </ul>
    <p>我要玩原神,把手机还给我</p>
    <h1>原神官网</h1>
</body>
</html>

去除代码

<style>
        * {
            margin: 0;
            padding: 0;
        }
        这一步是为了去除li标签前面的圆点
        li {
            list-style: none;
        }
        
    </style>

内容溢出


溢出的效果
.


在这里插入图片描述

外边距问题

1.合并
在这里插入图片描述
2.塌陷


记住,能用即可,这个东西感觉像是html自己的问题
在这里插入图片描述

行内元素垂直间距


在这里插入图片描述

盒子进阶

圆角

在这里插入图片描述

盒子的四个角的弧度可以分开设置
顺序:左右右左(无输入则取对角)

阴影



有顺序要求 **调一调**就知道了


实践案例

产品卡片

  1. 数据在设计稿中就测量好了,所以自己做网页的时候要注意,先有设计稿,再开发

  2. 有很多细节要注意:

  • 文字:大小、字体、粗细、显示模式、行高
  • 图片:位置、alt、title、跳转
  • 初始化:margin、padding、box-sizing
  • 盒子塌陷问题怎么解决?怎么把盒子居中?
  1. 代码要有顺序
  • 盒子模型
  • 文字图片
  • 圆角阴影

新闻列表

代码差不多就这样,我没老师的图。
实战才是检验掌握的标准
了解知识不够,还要会用,会变着花样的用

  • margin可以用来移动块
  • border的用法
  • li前面那个点点的去除
  • 类style 的创建习惯(要不然容易创的太多,啥也忘了)
  • 父子级的style使用
  • 做一个网页哪有那么容易一个模块就做一下午,害()


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            box-sizing: border-box;
            margin: 0;
            padding:0;
        }
        li {
            list-style: none;
        }
        .new {
            width: 300px;
            height: 250px;
            background-color: #666;
            margin: 150px auto;

        }
        .hd {
            width: 300px;
            height: 40px;
            background-color: #999;

            border:1px solid #666;
        }
        .hd a {
            display: block;

            width: 50px;
            height: 40px;
            margin: -1px 0 0 -1px;

            background-color: #eee;
            border-right:1px solid #666;
            
            text-align: center;
            text-decoration: none;
            color: #666;

            line-height: 40px;

            border-top:3px solid #080;
        }
        .bd {
            width: 300px;
            height: 210px;
            background-color: #eee;
            padding: 5px;

        }
        .bd a {
            font-size: 15px;
            color: #999;
            text-decoration: none;
            line-height: 25px;
        }
        .bd a:hover {
            color: black;
        }
        .bd li {
            padding-left: 15px;
        }
    </style>
</head>
<body>
    <div class="new">
        <!-- 标题 -->
        <div class="hd"> 
            <a href="#">新闻</a>
        </div>
        <!-- 内容 -->
        <div class="bd">
            <ul>
                <li><img src="" alt="" title=""><a href="#">大模型入局</a></li>
                <li><img src="" alt="" title=""><a href="#">大模型入局</a></li>
                <li><img src="" alt="" title=""><a href="#">大模型入局</a></li>
                <li><img src="" alt="" title=""><a href="#">大模型入局</a></li>
                <li><img src="" alt="" title=""><a href="#">大模型入局</a></li>
                <li><img src="" alt="" title=""><a href="#">大模型入局</a></li>
                <li><img src="" alt="" title=""><a href="#">大模型入局</a></li>
                <li><img src="" alt="" title=""><a href="#">大模型入局</a></li>
            </ul>
        </div>
    </div>
</body>
</html>





浮动float

特性

在这里插入图片描述

用法

在块级标签的style中加入float属性,可以将其脱离标准流的控制,实现块的同行呈现
在这里插入图片描述

一般,要在块标签上加float,那就都加

实例小米官方商城

原品

在这里插入图片描述

  1. 版心居中
  2. float浮动
  3. 父级宽度不够,子级会跳到下一行,排版出现错误

浮动


在这里插入图片描述


在这里插入图片描述

方法1、2、3都是在原父级末尾添加一个新块级标签,来撑起来父级的宽度
(浮动在标准流中去除了块级标签,那我再加上不就得了)

flex弹性容器

在这里插入图片描述

主轴与侧轴的对齐

主轴默认是x轴
(前提是父级为弹性容器,子级是弹性盒子)

主轴

在这里插入图片描述

侧轴

在这里插入图片描述

主轴与侧轴的切换

在这里插入图片描述

弹性伸缩比

属性名:flex
表示某弹性容器中某弹性盒子在主轴方向的剩余空间中的占比
ps(弹性盒子如果没有设置宽高,则其主轴大小由内容撑开,侧轴大小拉伸满[拉满了])

在这里插入图片描述





实现逻辑:检测主轴,检测含有flex属性的盒子,将主轴方向上不含flex的盒子占用的空间减去而后瓜分,按照属性值按权值分给含有flex的盒子

在这里插入图片描述
结果是这样
在这里插入图片描述

弹性换行

属性:flex-wrap
属性值:默认是nowrap,不换行,同一行盒子过多会挤压
wrap,换行

对齐

justify-content主轴方向子元素对齐
align-items竖轴方向位置
align-content多行内容的行对齐,只有一行就没用了

死记不如多用




实践案例

抖音解决方案


成品

在这里插入图片描述

  1. 外边框,外部大div,margin居中
  2. 内部用一个div包裹四个li,div通过margin居中
  3. 四个li分散到角落用flex系列属性
  4. li内部用两个div分别存放img与文本,文本与img同一行的处理用flex
  5. 文字处理:大小,粗细,颜色,对齐


伪类和伪元素

在这里插入图片描述


在这里插入图片描述

实战

补充知识点verti-align

补充:background属性

background-color 设置背景颜色
background-image 设置背景图片地址
background-repeat 设置背景图片如何重复平铺
background-position 设置背景图片的位置
background-attachment 设置背景图片是固定还是随着页面滚动条滚动

例如:

div {
	background: url()   right center #fff;

补充:
文本水平居中用text-align
竖直居中用line-height = height



定位

相对定位

        position: relative;
        相对的是元素的原位置,top、left、right、bottom。
        而且,移走元素之后,原位置不允许其他元素占用(没脱标).

绝对定位

		position:absolute;

特点

  1. 脱标,不占位(可重叠)
  2. 参照物:先找最近的已经定位的祖先元素;如果所有祖先元素都没有定位参照浏览器可视区改位置
  3. 显示模式特点改变:宽高生效(具备了行内块的特点,要变成行内块的形状了~)
绝对定位与相对定位的配合

想要做出一个块压在另一个块上的操作,需要“子绝,父相”的定位方式

在这里插入图片描述
上图中:大图为父级,小图为子级

为什么子绝父相
父级相对定位才能保证原有位置不被占,保护网页布局
子级绝对定位,是相对父级的定位,可以自由在父级内移动


### 使用

在这里插入图片描述

固定定位

特点

  1. 脱标,不会像相对定位一样占着茅坑不拉⑩
  2. 对他进行边偏移的时候不会参照物时浏览器可视区
  3. 转化成行内块了

定位的特性(拓展)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

定位层叠次序

在这里插入图片描述
z表示的是z轴
z-index越大,越靠上


CSS精灵(sprite)

总思想就是:网站中有太多小图,一个一个请求太浪费速度,所以把他们汇总成一张大图,然后通过一个窗口,移动大图位置得到你想要的小图

在这里插入图片描述
注意啊,bgp里面常用的时负的坐标,因为浏览器默认时把左上顶点当作原点的

字体图标


将小图标字体化,节省空间与时间,很灵活的一种用法

在这里插入图片描述

字体图标的原理与使用


作者制作这个东西的时候,自带了iconfont.css文件,里面是对字体图标的样式定义。


所以,你在用它的时候,需要注意link这个css、并且在具体的使用标签处class一下iconfont以及该图标对应的类名(在作者给的html文件中)


在这里插入图片描述

垂直对齐方式


vertical-align:middle\baseline\top\bottom;
在这里插入图片描述



在这里插入图片描述

过度属性

(参考pr里面的关键帧)

作用:可以为一个元素在不同状态之间切换的时候添加过渡效果
在这里插入图片描述

整体透明度

opacity
在这里插入图片描述

光标类型

在这里插入图片描述

display与visibility与overflow

display

在这里插入图片描述

visibility

在这里插入图片描述

overflow

在这里插入图片描述




filter

模糊效果,与js有关

在这里插入图片描述


过渡属性

具体用法


在这里插入图片描述

  • transition写在hover和原选择器里都可以
  • 若想对多个属性进行过渡,则用 分隔开
  • 鼠标放上去,过渡了,但是移开的时候,瞬间变回原样而不是渐变。
    怎么解决:把transition写在非hover的地方即可

补充

display:flex;放在目标标签的父级

input

去除input的蓝色边框
在这里插入图片描述

text-area

文本域就是text-area

text-align

一个盒子添加了text-align:center;,那么该盒子内的行内、行内块元素都会居中对齐

css小三角制作

用border

  1. border本质上是三角型,普通上下左右三角只需要把其他方向的三角设为transparent即可
  2. 这种
    在这里插入图片描述
        div {
	          width: 0px;height: 0px;
           border-bottom: 0px ;
           border-right: 50px solid #e1e12e ;
           border-left:50px solid transparent ;
           border-top: 100px solid transparent;
       }

属性选择器

在这里插入图片描述

div[class]
div[class="nav"]
div[class^="n"]
div[class$="v"]
div[class*="a"

结构伪类选择器

在这里插入图片描述

nth-of-child nth-of-type


在这里插入图片描述

实现清除浮动


伪元素选择器法


在这里插入图片描述

浮动本意是用来使文字和图片交汇使用的,clear标签则是用来精细的调控浮动的效果

项目开发

  1. 标准规范
  2. 文件夹安排
  3. 模块化分配代码
  4. 类名的命名
  5. TDK与SEO,是网站更容易被搜索到

favicon

网页的标识符
如:

在这里插入图片描述
在这里插入图片描述
制作:

等等网页或者工具来制作


TDK

T:title 网站名字
D:description 简要说明网站的功能
K:keywords 页面的关键词,引擎的重点关注对象,6-10个左右,越靠前权重越大
在这里插入图片描述


SEO指的是,搜索引擎优化

常用命名规则与方式



less

less再css的基础上加入了编程语言的语法和特性,更加便利,功能更多,易于维护

  1. 加减乘除运算(左右空格隔开)
  2. 父子级嵌套来写
  3. 变量的定义:@a:10px;

运算可用于:颜色,像素,大小等等可以用到数字表示的东西
在这里插入图片描述

具体用法如文档所示

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值