运营转前端 CSS学习篇-4

D11

209.2(掌握)transform的介绍以及常见transform-function

  • CSS属性-transform(形变)

    • CSS transform属性允许对某一个元素进行某些形变, 包括旋转,缩放,倾斜或平移等

    • 并非所有的盒子都可以进行transform的转换(通常行内级元素不能进行形变,比如对span,a元素无效)

  • transform的用法----transform-function(函数)

    • 常见的函数transform-function有:

      • 平移:translate(x, y)

      • 缩放:scale(x, y)

      • 旋转:rotate(deg)

      • 倾斜:skew(deg, deg)

210(掌握)transform-translate的使用

  • 位移:translate

    • 平移:translate(x, y)

      • 这个CSS 函数用于移动元素在平面上的位置。

      • translate:翻译;平移;

    • 值个数

      • 一个值时,设置x轴上的位移

      • 二个值时,设置x轴和y轴上的位移

    • 值类型

      • 数字:100px

      • 百分比:参照元素本身

  • translate的补充

    • translate是translateX和translateY函数的简写。

    • translate的百分比可以完成一个元素的水平和垂直居中:

1.水平居中的4种方式

(1)行内级元素:

* 设置父元素的text-align:center;

(2)块级元素:

* 设置当前块级元素(宽度)margin:0 auto;

(3)绝对定位

* 元素有宽度的情况下,设置left0/right0/margin:0 auto;

(4)flex

* justify-content:center

2.垂直居中的3种方式

(1))垂直居中:绝对定位

弊端:

a.必须使用定位(脱离标准流)

b.必须给元素设置高度

(2)垂直居中:flex布局

弊端:

a.当前flex布局中所有的元素都会被垂直居中

b.相对来说,兼容性差一点点

(3)垂直居中:top/translate

* 居中做两件事

a.让元素向下位移父元素的50%

b.让元素向上位移自身的50%

注意:margin-top的百分比是相对于包含块(父元素)的宽度

212(掌握)transform-scale的使用

  • 缩放:scale(x, y)

    • scale() CSS 函数可改变元素的大小

    • scale函数时scaleX和scaleY的缩写:

  • 值个数

    • 一个值时,设置x轴上的缩放

    • 二个值时,设置x轴和y轴上的缩放

  • 值类型:

    • 数字:

      • 1:保持不变

      • 2:放大一倍

      • 0.5:缩小一半

    • 百分比:百分比不常用

213(掌握)transform-rotate的使用

1.rotate旋转

  • 旋转:rotate(<angle>)

  • 值个数:一个值时,表示旋转的角度

  • 值类型:

    • 常用单位deg:旋转的角度( degrees )

    • 正数为顺时针

    • 负数为逆时针

      rotate补充

2.rotate补充

  • rotate函数是rotateZ函数的简写写法

  • rotate的其他单位

    • 度(degrees),百分度(gradians),弧度(radians)或圈数(turns)

213.1(掌握)transform-origin改形变圆点

  • transform-origin:形变的原点

    • 比如在进行scale缩放或者rotate旋转时,都会有一个原点。

  • 一个值:

    • 设置x轴的原点

  • 两个值:

    • 设置x轴和y轴的原点

  • 必须是<length>,<percentage>,或 left, center, right, top, bottom关键字中的一个

    • left, center, right, top, bottom关键字

    • length:从左上角开始计算

    • 百分比:参考元素本身大小

214(理解)transform-skew和transform设置多个值

  • 倾斜:skew(x, y)

  • 函数定义了一个元素在二维平面上的倾斜转换。

  • 值个数

    • 一个值时,表示x轴上的倾斜

    • 二个值时,表示x轴和y轴上的倾斜

  • 值类型:

    • deg:倾斜的角度

    • 正数为顺时针

    • 负数为逆时针

  • 注意:倾斜的原点受transform-origin的影响

  • transform设置多个值

    • <transform-function>+

    +:表示可以设置一个或多个属性,并且多个属性之间以空格分割

    transform:scale() translate();

    • <box-shadow>#

    #:一个或者多个,多个之间以,分割

    box-shadow:1px 1px 1px #f00,

214.1(掌握)CSSTransition的介绍和可动画属性

  • 什么是transition动画呢?

    • CSS transitions 提供了一种在更改CSS属性时控制动画速度的方法。

    • 可以让CSS属性变化成为一个持续一段时间的过程,而不是立即生效的;

    • 比如将一个元素从一个位置移动到另外一个位置,默认在修改完CSS属性后会立即生效;

    • 但是我们可以通过CSS transition,让这个过程加上一定的动画效果,包括一定的曲线速率变化;

  • 通常将两个状态之间的过渡称为隐式过渡(**implicit transitions),因为开始与结束之间的状态由浏览器决定。**

  • CSS transitions 可以决定

    • 哪些属性发生动画效果 (明确地列出这些属性)

    • 何时开始 (设置 delay)

    • 持续多久 (设置 duration)

    • 如何动画 (定义timing function,比如匀速地或先快后慢)。

  • 如何查看属性支不支持动画?

214.2(掌握)CSSTransition的常见属性使用

  • transition CSS 属性是 transition-property,transition-duration,transition-timing-function 和 transition-delay 的一个简写属性。

  • transition-property:指定应用过渡属性的名称

    • all:所有属性都执行动画;

    • none:所有属性都不执行动画;

    • CSS属性名称:要执行动画的CSS属性名称,比如width、left、transform等;

  • transition-duration:指定过渡动画所需的时间

  • 单位可以是秒(s)或毫秒(ms)

  • transition-timing-function:指定动画的变化曲线

    transition-timing-function - CSS:层叠样式表 | MDN

  • transition-delay:指定过渡动画执行之前的等待时间

215(理解)transform-translate-transition区分

  • transform是形变:

    • 一个CSS属性,该CSS属性用于设置形变;

    • 后面的值是形变的函数,比如scale、rotate、translate;

  • translate是其中一个transform-function(范围最小)

    • 用于对元素进行平移;

  • transition是过渡的意思(范围最广)

    • 它本身也有转变的含义,但是更多表示的是过渡的过程;

216(理解)元素的宽度和高度变化问题

  • 宽度变化时和transition没有关系

217(掌握)transition动画的缺点以及Animat

  • transition过渡动画有如下的缺点:

    • transition只能定义开始状态和结束状态,不能定义中间状态,也就是说只有两个状态;

    • transition不能重复执行,除非一再触发动画;

    • transition需要在特定状态下会触发才能执行,比如某个属性被修改了

  • CSS Animation可以有更多状态的变化

    • CSS Animation的使用分成两个步骤:

      • 步骤一:使用keyframes定义动画序列(每一帧动画如何执行)

      • 步骤二:配置动画执行的名称、持续时间、动画曲线、延迟、执行次数、方向等等

218(掌握)keyframes和animation的序列帧

1.@keyframes规则

  • 可以使用@keyframes来定义多个变化状态,并使用animation-name来声明匹配

    • 关键帧用percentage来制定动画发生的时间点

    • 0%表示动画的第一时刻,100%表示动画的最终时刻;

    • 也可以使用from和to分别表示0%和100%;

2.animation属性

  • CSS animation 属性是 animation-name,animation-duration, animation-timing-function,animation-delay,animation-iteration-count,animation-direction,animation-fill-mode 和 animation-play-state 属性的一个简写属性形式。

  • animation-name:指定执行哪一个关键帧动画

  • animation-duration:指定动画的持续时间

  • animation-timing-function:指定动画的变化曲线

  • animation-delay:指定延迟执行的时间

  • animation-iteration-count:指定动画执行的次数,执行infinite表示无限动画

  • animation-direction:指定方向,常用值normal和reverse

  • animation-fill-mode:执行动画最后保留哪一个值

    • none:回到没有执行动画的位置

    • forwards:动画最后一帧的位置

    • backwards:动画第一帧的位置

  • animation-play-state:指定动画运行或者暂停(在JavaScript中使用,用于暂停动画)

219(理解)块级元素中行盒的概念和作用

  • 行盒:line box

  • 作用:将当前行里面所有的内容全部包裹在一起,对齐方式就是baseline对齐

  • baseline都是谁?

    • 文本的baseline是字母x的下方

    • Inline-block默认的baseline是margin-bottom的底部(没有,就是盒子的底部)

    • Inline-block有文本时,baseline是最后一行文本的x的下方(如果有多行文本的话,基线就变成最后一行文本的基线)

  • vertical-align的其他值

    • baseline(默认值):基线对齐

    • top:把行内级盒子的顶部跟line boxes顶部对齐

    • middle:行内级盒子的中心点与父盒基线加上x-height一半的线对齐

    • bottom:把行内级盒子的底部跟line box底部对齐

    • <percentage>:把行内级盒子提升或者下降一段距离(距离相对于line-height计算\元素高度), 0cm意味着同baseline一样

    • <length>:把行内级盒子提升或者下降一段距离,0cm意味着同baseline一样

  • 解决图片下边缘的间隙方法

    • 方法一: 设置成top/middle/bottom

    • 方法二: 将图片设置为block元素

221(理解)vertical-align的其他值和居中问题

  • 行盒中默认baseline对齐;

  • 如果行盒中的红色盒子设置了margin-bottom,那么行盒中的内容就以margin-bottom对齐;

  • 如果红色盒子里面有文本,那么其他元素就会和红色盒子中的文本对齐;

  • line-height设置的是一行文本(一个行盒)的高度

  • 行盒中有普通文本和图片时,图片设置vertical-align:middle时,图片还是无法居中的,因为middle的时候图片是和文本中x的中心点对齐的,但是x的中心店低于中线,导致图片无法居中对齐.

222(理解)行内块级元素的居中和分离现象

html-css>19vertical-align>08,09行内块级元素

223(掌握)CSS整体内容回顾

224(掌握)项目实战-代码规范说明

225(掌握)项目实战-CSS编写顺序整理

1.先确定盒子本身是如何布局

  • position: absolute

  • float: left/right

  • display: flex

2.盒子的特性和可见性

  • display: block/inline-block/inline/none

  • visibility/opacity

3.盒子模型

  • width/height

  • box-sizing

  • margin/border/padding/content

  • box-shadow/text-shadow

4.内部的文本文字

  • font/text

5.background

background-image/size/position/color

6.其他

transform/transition/overflow/white-space

226(掌握)项目实战-组件化开发思想

  • 先组件化开发最后合并

227(掌握)王者荣耀-top-整体布局完成

  • 2种思路

    • 思路1:html结构写完再写css的样式

    • 思路2:写一个结构,写对的样式,再去写下一个结构,再写对应的样式

228(掌握)王者荣耀-top-top-left展示实现

  • 可以放在公共部分的名字用_链接,该区域本身的名字用-链接

  • 设置text-indent:-9999px是为了seo优化

229(掌握)王者荣耀-top-top-right展示实现

html-css>20HonorOfKing>01page_top

  • 2种方式添加图标

230(掌握)王者荣耀-header整体布局实现

html-css>20HonorOfKing>02page_header

231(掌握)王者荣耀-header-logo展示实现

html-css>20HonorOfKing>02page_header

232(掌握)王者荣耀-header-导航展示实现

html-css>20HonorOfKing>02page_header

233(掌握)王者荣耀-搜索和登录展示实现

html-css>20HonorOfKing>02page_header

234(掌握)王者荣耀-main-news区域整体布局

html-css>20HonorOfKing>03page_main_news

235(掌握)王者荣耀-main-news下载区域实现

html-css>20HonorOfKing>04page_main_news

  • -webkit-line-clamp:把块容器中的内容限制为指定的行数,只有在设置display:-webkit-box或者-webkit-inline-box并设置box-orient:vertical时才有效果

  • a元素里面嵌套div时,最好把a元素改成display:block,这样嵌套就可以.

244(掌握)补充

  • meta元素

    • head中用于定义元数据,,比如标题title,样式style,link外部资源,当没有元素标签可以用来定义元数据时,就用meta来进行定义

  • meta元素定义的元数据类型包括:

    • 如果设置了charset属性,meta元素是一个字符集声明,告诉文档使用哪种字符编码

    • 如果设置了http:equiv属性,meta元素则是编译指令

    • 如果设置name属性,meta提供的是文档级别的元数据,应用于整个页面

  • http:equiv属性:告知浏览器去模仿哪一个浏览器的行为

  • name属性

    • 常用的name属性

      • robots:爬虫,协作搜寻器,对此页面的处理行为,应当遵守的规则

      • author:文档作者的名字

      • copyright:版权声明

      • description:一段简短而精确的对页面的描述,将其用作书签的默认描述

      • keywords:与页面内容相关的关键词,使用逗号分割,某些搜索引擎会进行收录

  • link图标

    • favicon是favorites icon的缩写,也被称为website icon(站点图标)和page icon(页面图标)

    • 有多种写法

      • 写法1:<link rel="icon" href="https://pvp.qq.com/favicon.ico">

      • 写法2:<link rel="shortcut icon" href="https://pvp.qq.com/favicon.ico" type="image/x-icon">

  • CSS样式的字符编码

    • 样式表中有多种方法去声明字符编码,浏览器会按照以下顺序尝试下边的方法(一旦找到就停止)

      • 1.文件开头的Unicode byte-order(字节顺序标记)字符值

      • 2.由Content-Type:HTTP header中的charset属性给出的值或用于提供样式表的协议中的等效值

      • 3.CSS@规则 @charset

      • 4.<link>元素的charset属性,不用了

      • 5.假设文档是UTF-8

目录

209.2(掌握)transform的介绍以及常见transform-function

210(掌握)transform-translate的使用

1.水平居中的4种方式

2.垂直居中的3种方式

212(掌握)transform-scale的使用

213(掌握)transform-rotate的使用

1.rotate旋转

2.rotate补充

213.1(掌握)transform-origin改形变圆点

214(理解)transform-skew和transform设置多个值

214.1(掌握)CSSTransition的介绍和可动画属性

214.2(掌握)CSSTransition的常见属性使用

215(理解)transform-translate-transition区分

216(理解)元素的宽度和高度变化问题

217(掌握)transition动画的缺点以及Animat

218(掌握)keyframes和animation的序列帧

1.@keyframes规则

2.animation属性

219(理解)块级元素中行盒的概念和作用

221(理解)vertical-align的其他值和居中问题

222(理解)行内块级元素的居中和分离现象

223(掌握)CSS整体内容回顾

224(掌握)项目实战-代码规范说明

225(掌握)项目实战-CSS编写顺序整理

1.先确定盒子本身是如何布局

2.盒子的特性和可见性

3.盒子模型

4.内部的文本文字

5.background

6.其他

226(掌握)项目实战-组件化开发思想

227(掌握)王者荣耀-top-整体布局完成

228(掌握)王者荣耀-top-top-left展示实现

229(掌握)王者荣耀-top-top-right展示实现

230(掌握)王者荣耀-header整体布局实现

231(掌握)王者荣耀-header-logo展示实现

232(掌握)王者荣耀-header-导航展示实现

233(掌握)王者荣耀-搜索和登录展示实现

234(掌握)王者荣耀-main-news区域整体布局

235(掌握)王者荣耀-main-news下载区域实现

244(掌握)补充


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值