标签:测试 单词 原理 填充 空白 ota 工作 图像 percent
:first-child :选择是其父元素中的第1个子元素的元素;
:last-child :选择是其父元素中的最后一个子元素的元素;
:nth-child(n) :选择是其父元素中的第n个子元素的元素;
:nth-last-child(n) :选择是其父元素中的倒数第n个子元素的元素;
:only-child :选择是其父元素中的唯一的子元素的元素;
:only-of-type :选择是其父元素中的唯一的某个元素类型的子元素的元素;
:nth-of-type(n) :选择其父元素中的第n个某(任何)元素;
:nth-last-of-type(n) :选择其父元素中的倒数第n个某(任何)元素;
注意:
n可以是任意正整数,当直接写n时间,代表正整数变量(自增器,从1自增,增量为1);
经过测试,发现;以下内容:
counter()用来生成计数器的占位符,如果指定的计数器没有创建,则会创建盯应的计数器;每个计数器有一个变量(我称之为“计数变量”)保存当前的计数;counter-increment用来对其指定的计数器的计数器的计数变量进行递增;每应用一次counter-increment,就递增一次其指定的计数器的计数变量;
元数据元素: 由此可见主要是元素中的事情了,向浏览器提供信息和指示;
流元素: 听名字怪异,但是其实是规定这些元素可以成为父元素;
短语元素: 和流元素呼应,规定这些元素可以成为子元素。
受限元素: 这些元素要么没什么特别的含义,要么就只能用在一些非常有限的情况下。比如说,< li>元素只能有三种父元素< ul>、< ol>、< menu>;
虚元素: 不能包含任何内容的元素;这种元素只有两种表示形式:
注意:
空元素和虚元素的区别:空元素描述的是元素内容为空时的状态;虚元素描述的是元素不允许有内容;
元数据还好理解,就是流元素和短语元素好奇怪,举个例子,div既可以是流元素也可以是短语元素,因为它能包含其他的元素也能被其他的元素包含。但是像< b>这样的就仅仅是短语元素了。
一般设置对象图片作为背景属性实例 background:#666 url(图片地址) no-repeat center top ;(解释首先设置背景颜色 紧跟设置图片作背景 紧跟图片是否重复 然后跟图片在对象位置。前面的背景颜色可以不用设同时不是必须,一般使用图片作为对象背景如果要设置图片是否重复显示距离位置将设置图片位置)
详细内容请参考《CSS中渐变特性的研究》
- 每个渐变至少需要指定2个色标color-stop;
- 对于任意2个相邻色标之间的颜色变化是:在前一个色标与后一个色标的位置之间,线性地把前一个色标的颜色过渡到后一个色标的颜色;
- 对于多个没指定位置的色标,它们的位置分别是:前面最近的有位置的色标的位置 与 后面最近有位置的色标的位置 之间的平分点;
- 如果第1个色标没有指定位置,则第1个色标的位置是渐变区域的起始位置;
- 如果最后1个色标没有指定位置,则最后1个色标的位置是渐变区域的结束位置;
- 对于非重复渐变,第1个色标位置之前的颜色是第1个色标的颜色;最后一个色标位置之后的颜色是最后一个色标的颜色;
- 对于重复渐变,会用渐变区域分别平铺第1个色标之前的区域 和 最后1个色标之后的区域 ,直到填满为止;
- 对于重复渐变,如果渐变渐变区域的长宽为零,则会用最后1个色标的颜色填充整个区域;
- 如果前面色标设置的位置大于后面色标设置的位置,则后面色标设置的位置无效,所有比前端色标的位置小的色标,都将用 大于自身位置的前面的色标中位置最大的那个色标的位置 作为自身的位置;
在绝对定位的情况下,如果元素没有设置宽度width,且设置了left和right,则元素的宽度width会被属性left和right伸缩,即元素真实的宽度width会适合于left和right的值;同样,对于元素的高度height与top和bottom之间,也存在这种关系;
在::before和::after伪元素选择器中必须定义content属性;
浏览器会为这2个伪元素选择器分别生成相应的盒子,这些盒子是作为元素的非主盒子;
弹性盒子由弹性容器(Flex container)和弹性子元素(Flex item)组成。
弹性容器通过设置 display 属性的值为 flex 或 inline-flex将其定义为弹性容器。
弹性容器内包含了一个或多个弹性子元素。
注意:
弹性子元素的主轴尺寸的公式为:
假设:
弹性容器的主轴尺寸这ConSize;
该弹性容器的某行内有n个弹性子元素,
这些弹性子元素的flex-basis分别为Item1Basis、Item2Basis、Item3Basis......ItemNBasis;
这些弹性子元素的flex-grow分别为Item1Grow、Item2Grow、Item3Grow......ItemNGrow;
这些弹性子元素的flex-shrink分别为Item1Shrink、Item2Shrink、Item3Shrink......ItemNShrink;
这些弹性子元素的flex-shrink分别为Item1Size、Item2Size、Item3Size......ItemNSize;
BasisTotal = Item1Basis + Item2Basis + …+ ItemNBasis
GrowTotal = Item1Grow + Item2Grow + …+ ItemNGrow
ShrinkTotal = Item1Shrink + Item2Shrink + …+ ItemNShrink
则有:
对于任意一个弹性子元素ItemX,有:
当弹性容器在主轴尺寸上有多余的空间时,即:当 ConSize >= BasisTotal 时,有:
ItemXSize = ItemXBasis + ( ConSize - BasisTotal )*( ItemXGrow/GrowTotal )
当弹性容器在主轴尺寸上的空间不足时,即:当 ConSize <= BasisTotal 时,有:
ItemXSize = ItemXBasis + ( ConSize - BasisTotal )*( ItemXShrink/GrowShrink )
即:
ItemXSize = ItemXBasis - ( BasisTotal - ConSize)*( ItemXShrink/GrowShrink )
justify-content: 设置或检索 在 弹性容器的行的范围内 弹性盒子元素在主轴方向上的对齐方式。
操作范围:行;
操作对象:行内的弹性子元素;
适用于:flex容器;
备注:当弹性盒里一行上的所有子元素都不能伸缩或已经达到其最大值时,这一属性可协助对多余的空间进行分配。当元素溢出某行时,这一属性同样会在对齐上进行控制。
取值效果如下:
align-content: 设置或检索 在 弹性容器的范围内 行在侧轴方向上的对齐方式。
操作范围:弹性容器;
操作对象:行;
适用于:多行的flex容器;
备注:请注意本属性在只有一行的伸缩容器上没有效果。
取值效果如下:
align-items: 定义弹性盒子元素自己 在 弹性容器的行的范围内 在侧轴方向上的对齐方式。
操作范围:行;
操作对象:行内的弹性子元素;
适用于:flex容器;
取值效果如下:
align-self: 定义 在 弹性容器的行的范围内 弹性盒子元素在侧轴方向上的对齐方式。
操作范围:行;
操作对象:行内的弹性子元素;
适用于:flex子项
在CSS中,可以通过CSS属性letter-spacing或word-spacing设置字间距;但没有直接设置行间距的属性,不过可以通过设置行高属性line-height来实现设置行间距的效果;
它们的定义如下:
语法:
letter-spacing:normal | <length> | <percentage>
默认值:normal
适用于:所有元素
继承性:有
动画性:非normal值时
取值:
normal:默认间隔
<length>:用长度值指定间隔。可以为负值。
<percentage>:用百分比指定间隔。可以为负值。(CSS3)
说明:
检索或设置对象中的字符之间的最小,最大和最佳间隙。
该属性将指定的间隔添加到每个文字(包括单词内的每个字母)之后;
<‘ letter-spacing ‘> 不能被应用于一行的开始和结束;
对应的脚本特性为letterSpacing。
语法:
word-spacing:normal | <length> | <percentage>
默认值:normal
适用于:所有元素
继承性:有
动画性:非normal值时
取值:
normal:默认间隔
<length>:用长度值指定间隔。可以为负值。
<percentage>:用百分比指定间隔。可以为负值。(CSS3)
说明:
检索或设置对象中的单词之间的最小,最大和最佳间隙。
该属性将指定的间隔添加到每个单词(词内不发生)之后,但最后一个字将被排除在外。
判断是否为单词的依据是单词间是否有空格。
对应的脚本特性为wordSpacing。
可以通过line-height设置行的高度,从而达到调节行间距的效果;
语法:
line-height:normal | <length> | <percentage> | <number>
默认值:normal
适用于:所有元素
继承性:有
动画性:当值为 <length> | <number> 时
取值:
normal:允许内容顶开或溢出指定的容器边界。
<length>:用长度值指定行高。不允许负值。
<percentage>:用百分比指定行高,其百分比取值是基于字体的高度尺寸。不允许负值。
<number>:用乘积因子指定行高。不允许负值。
说明:
检索或设置对象的行高。即字体最底端与字体内部顶端之间的距离。
对应的脚本特性为lineHeight。
当把a标签作为按钮来用时,会有一个问题:a标签被点击时,会发生跳转;为解决此问题,我特意研究的a标签的跳转行为,总结如下:
#
开头 且 #
后有它非空格字符 的 字符串,如: <a href="##"></a>
、 <a href="#任何字符串"></a>
;javascript:
开头 且 javascript:
后面的代码没有返回任何东西 或者 返回为 undefined
、 null
、 void
或者 void表达式,如: <a href="javascript:"></a>
、 <a href="javascript:undefined"></a>
、 <a href="
javascript:null">、
、
、
`;备注:关于void,请参考《JavaScript的发现与理解》;event
的 preventDefault()
方法来阻止 a 标签的默认操作----跳转;<a></a>
;<a href></a>
;""
或 只有空格的字符串 " "
,如: <a href=""></a>
、 <a href=" "></a>
;?
开头的字符串,如: <a href="?"></a>
、 <a href="?任意字符串"></a>
;#
开头 且 #
后没有其它非空格字符 的 字符串,如: <a href="#"></a>
、 <a href="# "></a>
;因为:
解决方案:
在打开文本文件的软件中更改 解码该文本文件的 字符编码方案 为 该文本文件在编码(保存)时选择的字符编码方案;
由于:
解决方案:
在 HTML 文档中通过 meta 标签告诉浏览器 HTML 文件的正确的字符编码方式,如下:
在 HTML 4.01 中用以下方式:
<meta http-equiv="content-type" content="text/html; charset=文件的字符编码">
在 HTML5 中 为 meta 标签 新增了 charset 属性,用来指定字符编码,所以在 HTML5 中有2种方式指定字符编码:
<meta charset="文件的字符编码">
或者
<meta http-equiv="content-type" content="text/html; charset=文件的字符编码">
注意:
E::before
选择器选中的是 E 元素的所有直接子元素的前面;E::after
选择器选中的是 E 元素的所有直接子元素的后面;clear
;::after
选择器在该父元素的内容中的最后面插入一个块元素,并给这个新插入的元素设置清除浮动 clear
;标签:测试 单词 原理 填充 空白 ota 工作 图像 percent
原文地址:https://www.cnblogs.com/guobinyong/p/12150183.html