首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    从零开始学 Web 之 CSS3(七)多列布局,伸缩布局

    一、多列布局 CSS3中新出现的多列布局 (multi-column) 是传统 HTML 网页中块状布局模式的有力扩充。 这种新语法能够让 WEB 开发人员轻松的让文本呈现多列显示。...column-span: 规定元素应横跨多少列(1:跨1列 all:跨所有列) max-height: 列高度 /*如果设定列的最大高度,这个时候,文本内容会从第一列开始填充,然后第二列...*/...比如:如果设置的列的宽度大于自动计算的列的宽度,那么实际显示的效果以设置的列的宽度为准;如果设置的列的宽度无法填充整个屏幕,那么实际的宽度可能大于设置的宽度; 如果设置的列的宽度小于自动计算的列的宽度...3、flex属性(子元素使用) 3.1、flex-grow flow-grow:可以来扩展子元素的宽度:设置当前元素应该占据剩余空间的比例值,这个比例值是和其他兄弟子元素占据的剩余空间平分的。...(在子元素未设置高度时有效) baseline:以子元素中文本基线对齐来来对齐*/ 问题: align-items 既然写在父元素中,是对所有子元素在侧轴方向的对齐方式进行设置。

    4.4K10

    用 CSS 隐藏页面元素的 5 种方法

    用 CSS 隐藏页面元素有许多种方法。...这确保了 visibility 状态切换之间的过渡动画可以是时间平滑的(事实上可以用这一点来用 hidden 实现元素的延迟显示和隐藏——译者注)。...下面是采用这种办法的 CSS: .hide { position: absolute; top: -9999px; left: -9999px; } 下面的例子阐明了怎样通过绝对定位的方式隐藏元素...(用 DOM 模拟复选框和单选按钮,但用这个方法隐藏真正的 checkbox 和 radio 元素来“接收”焦点切换——译者注) Clip-path 隐藏元素的另一种方法是通过剪裁它们来实现。...在我们的例子里,剪裁区大小为零,这意味着用户将不能与隐藏的元素直接交互。此外,这个属性能够使用各种过渡动画来实现不同的效果。 结论 在这篇教程里,我们看了 5 种不同的通过 CSS 隐藏元素的方法。

    2.4K40

    CSS一个div内两个子元素的高度自适应

    ---- 设想这样一个情况:一个父元素有两个子元素,父元素的高度不确定,用子元素撑起来。 但是这会导致一个问题:各个子元素的高度不一致,为子元素添加height:100%是无效的。...这种方式需要父元素高度确定,然而父元素的高度由子元素确定。 猜想渲染时由于父元素高度不确定,会计算出各个子元素的高度再确定父元素高度,但计算子元素高度时并没有父元素高度可以参考,因此上述方法行不通。...你可以 为父元素设置固定高度 配合height:100%,两个子元素都能撑满父元素 利用span元素与布局 如果span的定位是absolute类型,那么它的高度可以等于父元素的高度。...父元素只根据相对定位的子元素决定高度,也就是说,absolute定位的span设置height:100%是有效的,父元素的高度对它来说是已知的。...这种方法下,父元素的高度仍然由最高的相对定位的子元素确定,其它元素放到span中,所以需要知道最高的子元素。 使用同色背景 虽然很简单,却很实用的方法。子元素的高度虽然不都是100%,但效果一样。

    5.7K30

    CSS Grid 新手入门

    Grid Container (网格容器) 在一个元素上应用了display: grid;或者display: inline-grid;那么就创建了一个网格容器,它下面的直接子元素都会成为网格元素,例如...在图中可以看出网格的数量,其中的子元素会根据这些网格的数量自动填充。...,可以使用grid-auto-rows: 100px;来确定每行只有100px minmax() 如果想让每行的高度随着内容自动填充,那么可以使用minmax()来确定最小值与最大值,例如: .container...,并且划分了区域,第一行为header,第二行为左侧为siderbar,右侧为main,第三行为footer,那么剩余的工作就是制定子元素对应的区域即可,例如: .header { grid-area...如果屏幕上有很多剩余的空间,flex布局会均分成5列,而grid布局则会始终为3列,并且余下的两个item也长度也 相同,而如果屏幕宽度调整为小于200时,flex布局会弹性地变为1列,但是grid布局如果没有使用

    2.3K60

    CSS 伪元素的一些罕见用例

    作者:ahman 译者:前端小智 来源:css-tricks 点赞再看,养成习惯本文 GitHub https://github.com/qq44924588......然而,我觉得有些用例并不是所有开发人员都完全了解的。我写下这篇文章是为了阐明它们,以便它们能被更多地使用。 父子元素悬停特效 由于伪元素属于其父元素,因此存在一些不寻常的用例。.../* Other styles */ } .section-title:hover:before { transform: scale(1.2); } 简单明了,接着我们将此概念延伸到更有用的用例...上面的设计模型展示了我想要应用的想法。段落中的每个彩色链接都有一个与之配对的伪元素。 ?...包裹的阴影 过去,我曾经创建过一个在边缘倾斜的阴影。 它有一点微妙的效果。 你猜怎么了! 可以使用伪元素来实现它们。 ? 创建元素 使用以下常规样式创建了一个div元素。

    1K40

    【CSS进阶】伪元素的妙用2 - 多列均匀布局及title属性效果

    本篇接我另一篇讲述 CSS 伪元素的文章: 【CSS进阶】伪元素的妙用–单标签之美,看完本文觉得有意思的可以再去看看上一篇,分享了一些伪元素的妙用。 正文从这里开始: 哪些标签不支持伪元素?...这里有一个纯 CSS 的方案可以解决这个场景,并且不需要添加额外的 HTML 标签,运用了伪元素,先上 Demo: 鼠标 hover 一下文字,发现弹出层响应十分迅速(因为就是 CSS hover,没有延迟...借用伪元素实现多列均匀布局 我们经常需要实现多列均匀布局,能够自适应各种情况,如下: ?...,使用伪元素,可以完美实现: 通过给伪元素 :after 设置 inline-block ,配合容器的 text-align: justify 就可以轻松实现多列均匀布局了。...我另一篇讲述 CSS 伪元素的文章: 【CSS进阶】伪元素的妙用–单标签之美,看完本文觉得有意思的可以再去看看上一篇。

    1.4K40

    css3的学习笔记

    1.opacity ----------------------取值0-1之间,给整个元素和其所有子元素设置透明度级别 2.css选择器----------------------http://www.w3school.com.cn...,和向上移动高度的一半,值可以有正负,可以为像素,可以为百分比(当指定一个值时默认为x) transform: rotate(15deg); 旋转 ,当前元素顺时针旋转多少度。...;填充方式,默认是auto,从左往右一次填充, balance是每个栏目基本内容填充的都差不多 column-span:3;宽栏目设置,可以设置某个在栏目中的元素,所跨的栏目数 16.流动布局 flexbox...,选择跨越的列数; grid-row:2;子元素选着第几行; grid-row-span:2;子元素选择跨越的的行数,当前行为起始; 18.清除 wrap-flow:both;排除 auto默认值,如果采用该值...warp-margin:10px;指定其他剩余内容与排除项元素之间的外边距。 warp-padding:10px;指定其他剩余内容与排除项元素之间的内边距。

    65520

    css3的学习笔记

    适合初学者以及没看过css3的人快速了解css3的主要内容。...1.opacity ----------------------取值0-1之间,给整个元素和其所有子元素设置透明度级别 2.css选择器----------------------http://www.w3school.com.cn...;填充方式,默认是auto,从左往右一次填充, balance是每个栏目基本内容填充的都差不多 column-span:3;宽栏目设置,可以设置某个在栏目中的元素,所跨的栏目数 16.流动布局...:2;子元素以当前列为启示,选择跨越的列数; grid-row:2;子元素选着第几行; grid-row-span:2;子元素选择跨越的的行数,当前行为起始; 18.清除 wrap-flow...warp-margin:10px;指定其他剩余内容与排除项元素之间的外边距。 warp-padding:10px;指定其他剩余内容与排除项元素之间的内边距。

    1.1K50

    css面试点三:清除浮动的九中方法-高度塌陷理解-伪元素使用

    浮动框不属于文档流中的普通流,当元素浮动之后,不会影响块级元素的布局,只会影响内联元素布局 当包含框的高度小于浮动框的时候,此时就会出现“高度塌陷”。 为什么要清除浮动?...清除浮动主要是为了解决,父元素因为子级元素浮动引起的内部高度为0的问题。 当父元素不给高度的时候,内部元素不浮动时会撑开,而浮动的时候,父元素变成一条线。...本质就是闭合浮动, 就是让父盒子闭合出口和入口,不让子盒子出来 clear:left | right | both | none | inherit:元素的某个方向上不能有浮动元素 如果我们清除了浮动,...父元素自动检测子盒子最高的高度,然后与其同高。...高度塌陷 如果父元素只包含浮动元素,且父元素未设置高度和宽度的时候。

    1.2K20

    CSS理解之margin

    上图宽度从填满整个所在的容器到宽度500px,这就产生了剩余空间,图中的剩余空白部分空间width=整个容器宽度-500px,而margin auto 就是 为了填充这个空白的尺寸设计的,这就是margin...因为图片是inline水平的,它占据的空间并没有撑满整个容器,如果没有设置宽度值。所以它就不满足margin auto 用来填充剩余空间的条件,因为他根本就没有剩余空间。...image.png 上图水平方向剧中了,但是垂直方向不剧中,父级元素高度有了,子元素高度也有了,为什么还是不垂直居中呢?...还需要注意一点:用margin:auto来实现居中,它计算后的值必须是正直,比如说你的父容器宽度1000px,子元素宽度2000px,这时设置margin:auto它是不居中的。...image.png image.png 5.CSS margin失效情形解析 inline水平元素的垂直margin无效,前提: inline水平元素是非替换元素,例如,不是元素; 正常书写模式

    1.9K20

    CSS Grid 那些鲜为人知的内幕

    项目 项目是网格容器的子元素(即「直接后代」)。...❞ 隐式网格是动态的;根据子元素的数量将添加和删除行。每个子元素都有自己的行。 ❝默认情况下,网格容器的高度由其子元素确定。 ❞ 它会动态增长和收缩。...基于fr单位的列无论如何缩小容器宽度,该列也不会收缩到其最小内容大小以下。 ❝更准确地说:fr单位分配额外的空间。首先,列宽将根据其内容计算。如果有剩余空间,它将根据fr值进行分配。...Grid 还提供了一组额外的属性来在垂直方向上对齐内容: align-items 其取值为以下几种: stretch:填充单元格的整个高度(这是默认值) start:将项目与其单元格的开始边缘对齐 end...只使用两个 CSS 属性,我们就可以将子元素水平和垂直居中于容器中: 正如我们所学到的,justify-content 控制列的位置。align-content 控制行的位置。

    1.1K10
    领券