CSS细节进阶之深入行内元素

html-css08

CSS细节进阶之深入行内元素,第1张

相信大家对行内元素的认识大多是不换行,不能设置宽高,又或者是来自经典的垂直水平居中内联元素的面试题,把line-height设置成父盒子的高度,但在昨天练习切图的过程中,发现将一行内联元素在垂直方向上对齐很困难,特别是包含img元素,于是决定深入了解一下这行内元素的细节

     1.分类:内联元素分为替换元素和非替换元素

MDN上对可替换元素是这么说的

翻译过来就是

这些特殊的行内元素,虽然不换行,但可以设置宽高,四周padding和margin

而普通的行内元素(非替换元素,向span,a等)不能设置宽高,四周margin无效,四周padding有效,

但上下padding比较特殊,不会撑大内容区,但会撑大行高(line-height),下面我们细说

!此处注意:虽然替换元素特殊,但也是行内元素,下面介绍行内元素的一些概念

每个行内元素都有一条基线,规则如下

1.非替换元素中的基线是英文字母x的下端,什么意思,如图,红色的就是这个非替换元素的基线

2.替换元素中的基线就是margin-bottom的外沿

有了基线的知识,我们现来说说一行的行内元素是怎么排列的,只有两步

1.找到本行第一个行内元素,确定它的基线

2.找到下一个行内元素,确定它的基线并与第一个基线对齐,以此类推,直到排完本行内的所有行内元素

等一行的行内元素都排完了,这一行的行框就确定了,为什么叫行框,那肯定是把一行的行内元素都包含进去的框嘛,所以说行框的高度就是本行内最高的行内元素的top line 到最低的行内元素的bottom line。

line-height就是行内元素的内容区+padding,也就是一个行内元素的top line 到bottom line的距离

所以设置line-height为父盒子高度的一半就可以把元素挤到中间。

设置行内元素和本行框基线的对齐方式

指定对象围绕着 X / Y / Z 轴上的旋转角度

指定对象的 3D 旋转角度

前三个参数分别代表旋转的方向 x,y,z,第四个参数表示旋转的角度,参数不允许省略

前三个参数只有三个取值效果:正数,0,负数

如果多个方向发生改变,小数会代表在这个方向的旋转程度,最小小数取值为 0.1

指定对象 Z 轴的平移(更多用于遮罩)

z 值不能省略

指定对象的 3D 位移

第一个参数对应 X 轴,第二个对应 Y 轴,第三个对应 Z 轴,参数不允许省略

指定对象的 Z 轴缩放

参数对应 Z 轴,不允许省略

指定对象的 3D 缩放

参数不允许省略

指定观察者与 XOY 平面(也就是屏幕)的距离,使具有三维位置变换的元素产生透视效果

指定透视点的位置

x-axis:50%

y-axis:50%

从各大招聘平台可以看到,Web前端行业招聘需求量巨大,一直呈现出供不应求的趋势,但是由于高等院校很少有开设相关的课程,导致每年新增的前端开发人员远远不够,所以现在的Web前端主要还是用过自学和参加培训为主,由于自学难度大,大部分人都选择去找相对的Web培训班学习,接下来就为大家介绍一下优就业的Web前端的学习内容。

优就业的Web前端一共分为六个阶段

第一阶段Html5+CSS3:主要学习HTML5基础、CSS基础、HTML5进阶、CSS3进阶、Less

第二阶段JS交互设计:主要学习JavaScript核心语法、DOM和BOM、JavaScript高级进阶、面向对象编程、Touch、jQuery、Zepto

第三阶段Node开发:主要学习JavaScript

ES6、Node、Express、MySQL、Webpack+Gulp+模块化、WebSocket+Koa2

第四阶段前端框架:主要学习Vue基础、Vue进阶、TypeScript、React

第五阶段小程序+数据可视化:主要学习小程序基础、云开发、uni-app基础、数据可视化

第六阶段就业指导+项目提升:就业指导、企业面试复盘

想要了解更多关于WEB前端的学习内容,可以看看优就业哟~