当前位置: 首页 > Web前端 > CSS

栏目布局columns的理解

时间:2023-03-30 16:27:06 CSS

【01】多栏属性columnszyx456:修改浏览器时该属性不会生效。只有刷新页面才会生效。内容:1概念2写作3列:列宽列数4列数5列宽6列间隙7列规则7.1列规则宽度7.2列规则样式7.3列规则颜色8列-span9column-fill10column-break-before11column-break-after12column-break-inside13兼容性概念列布局。multi-column,可以让文本看起来像报纸一样的多栏结构。写法//cssp{display:inline-block;宽度:600px;columns:30px3;}//html

TypeScript的核心原则之一是类型检查值的结构。它有时被称为“鸭子类型”或“结构子类型”。在TypeScript中,接口的作用是命名这些类型并为您的代码或第三方代码定义契约。类型检查器查看对printLabel的调用。printLabel接受一个参数,并要求此对象参数具有一个名为label的字符串类型的属性。需要注意的是,我们传入的对象参数实际上会包含很多属性,但编译器只会检查那些需要的属性是否存在以及它们的类型是否匹配。

columns:column-widthcolumn-count复合属性。默认值:查看每个单独的属性。设置元素的列数和每列的宽度。对应的JS特性是列。适用于:除表格、表格单元格、行内块元素之外的非替换块级元素。继承:没有column-width设置元素每一列的宽度。column-count设置元素的列数。列数:<整数>|auto设置元素的列数。默认值:auto:使用整数值定义列数。不允许负值。auto:根据column-width分配宽度。列宽:<长度>|auto设置元素每列的宽度。默认值:auto:使用长度值定义列宽。不允许负值。auto:根据column-count分配宽度。列间隙:<长度>|normal默认值:normal设置元素列之间的间隙。:使用长度值来定义列之间的间隙。负值normal是不允许的:和font-size一样大小。假设元素的font-size是16px,那么正常值就是16px,以此类推。列规则复合属性。设置元素列之间的边框。column-rule:<'column-rule-width||column-rule-style||column-rule-color'>默认值:查看每个单独的属性。column-rule:10pxsolid#090;column-rule不占空间位置,见下例:p{column-rule:50pxsolidyellow;}效果图:column-rule-width|薄|介质|thick设置元素列之间的边框厚度。默认值:medium:使用长度值定义边框的粗细。不允许有负值medium:定义边框的默认粗细。thin:定义比默认厚度更薄的边框。thick:定义比默认厚度更厚的边框。column-rule-style设置元素列之间的边框样式。列规则样式:无|隐藏|点缀|虚线|固体|双|凹槽|脊|插图|默认值:无值:无:无轮廓。<'column-rule-color和<'column-rule-width将被忽略。hidden:隐藏边框。dotted:虚线轮廓。虚线:虚线轮廓。solid:实线轮廓double:双线轮廓。两条单行及其间隔的总和等于指定的column-rule-width值。凹槽:3D凹槽轮廓。脊:3D凸槽轮廓。插图:3D凹面轮廓。开始:3D凸边轮廓。column-rule-color设置元素列之间的边框颜色。列跨度:无|all设置元素元素是否跨越所有列。适用于:除浮动和绝对定位外的块级元素取值:none:不跨列all:跨所有columns.tesp{column-count:3;column-width:100px;}.testp{column-span:all;}列填充:自动|balance设置元素所有列的高度是否统一。默认值:auto值:auto:列高自适应内容。balance:所有列的高度由最高的列统一。column-break-before设置是否在元素之前打断。分栏前:自动|总是|避免|左|对|页|栏目|breakbeforeandgeneratenewcolumnsalways:alwaysbreakbeforeelementsandgeneratenewcolumnsavoid:avoidbreakbeforeelementsandgeneratenewcolumns.test{column-count:4;column-gap:20px;}.testdiv{column-break-}before:always;}//html结构div.test>p+div+p
不管上一列是否填满,我都会再创建一列
zyx456:也就是这个元素将再次创建一行。列中断afterauto|总是|避免|左|对|页|栏目|避免页面|值:auto:既不强制也不禁止在元素后换行并生成新列always:始终在元素后换行并生成新列avoid:避免在元素后换行并生成新列。test{column-gap:20px;}.testdiv{column-break-after:always;}HTML结构:div.test>p+div+p
是否填充此列,稍后创建新列
column-break-inside设置是否打破元素内的线条。列内中断:自动|避免|避免页面|avoid-column默认值:auto适用于:块级元素值:auto:既不强制也不禁止元素内部换行并生成新列avoid:避免in元素内部换行并生成新列兼容性:前缀-webkit-,-moz——moz列数:3;/Firefox/-webkit-column-count:3;/Safari和Chrome/column-count:3;1部分支持意味着不支持break-before、break-after和break-inside属性。基于WebKit和Blink的浏览器确实对非标准的-webkit-column-break-属性提供了等效的支持以实现相同的结果(但仅限于auto和always值)。Firefox不支持break-,但在分页(打印)上下文中支持now-obsolutepage-break-*属性。2部分支持意味着不支持column-fill属性。3部分支持是指不支持属性break-before、break-after和break-inside的avoid-column、column和avoid(incolumncontext)值。