首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

CSS表格布局实践

CSS属性table-layout定义了表格单元格、行布局算法。默认值为auto,表格及其单元格宽度由其内部内容决定。...而值为fixed时,表格宽度取决于tabe元素宽度值,由对应col元素宽度决定,或者由首行单元格宽度决定,后续行内单元格不会影响。...使用fixed布局方法时,一旦表格首行下载和解析完成,整个表格即可被渲染。相对于自动布局方法,这种方法可加速表格渲染,但可能会造成后续单元格内容不适合。...如果我们对左右两设置一个看似合适固定宽度(如10em),进度条列是可以占据表格剩余空间,但无法实现根据内容自适应改变(so sad)。 怎么办?怎么办?怎么办?...再猜想:如果让需要占据剩余空间宽度尽可能大,大到100%,那么浏览器是否会为其他按照其内容宽度来分配空间呢?经尝试,居然也可以达到我们期待效果。 哈哈哈…… 但是 why? why?

1.1K40

CSS进阶11-表格table

任何剩余等分剩余水平表空间(减去边框borders或单元格间距cell spacing)。 表格宽度表格元素'width'属性所有总和(加上单元格间距或边框)中较大那个 。...后续行中单元格不会影响。任何具有溢出内容单元使用“overflow”属性来确定是否裁剪溢出内容。...对自动表格布局输入只能包含包含块宽度 以及 表格及其任何后代内容上设置任何CSS属性。 本节其余内容是非规范性。该算法可能导致效率低下。...CSS 2.2没有定义表单元格表行高度是如何用百分比值指定高度CSS 2.2没有定义行组上“高度”含义。 在CSS 2.2中,单元格盒高度是内容所需最小高度。...该值导致整个行或从显示中移除,并且由行或正常占据空间将用于其他内容。与折叠或行相交跨行内容会被剪切。但是,对行或抑制不会影响表格布局。

6.4K20
您找到你想要的搜索结果了吗?
是的
没有找到

一篇文章搞定多布局--等宽,等高,自适应

} .right4 { display: table-cell; } table-layout table-layout有两个值: fixed: 是表格布局优先,表格宽度宽度设定,而与单元格内容无关...这种模式下,浏览器在接收表格第一行后就可以渲染出来,速度更快。 auto: 这是默认值,表示表格内容优先,宽度是由单元格中没有折行内容设定。...不定 + 自适应 两布局,左边不定宽度内容决定,右边自适应常见解决方案: 不定:float + overflow 跟前面定写法很像,只是左边子级宽度不能写死了,要留给它子元素决定。...table:布局中我们用到了表格两个特性,一个是通过table-layout来控制是布局优先还是内容优先,如果将其设置为fixed,可以将一宽度固定,不受内容长度影响。...不设置table-layout,或者设置为auto,这其实是一样,因为他默认值就是auto,那里面的都是根据内容长度来自适应,如果我们想让一不留白,缩小到内容宽度,只需要给这一一个很小

2.6K10

前端设计,CSS 常用布局解决方案

还有基于margin float 传统布局方式、利用 BFC 布局方式 CSS3 弹性布局 flex 布局方式。具体选用哪一种可以依据实际业务加以变通修改。 ?...table + margin 优点:兼容性好,只用关心子元素样式属性;解释:display:table 属性使得元素具有同 inline-block 一样特性,容器大小取决于内容大小,并且具有高;...3、一,一自适应(其他类似的类型都可以由此衍生) float + margin 优点:兼容性较好; ?...,布局优先,固定表格布局中,水平布局仅取决于表格宽度宽度表格边框宽度、单元格间距,而与单元格内容无关。...自动表格布局中,宽度是由单元格中没有折行内容设定。; ? flex 缺点:性能一般;解释:flex 一般用于小范围布局,防止出现性能问题; ?

72810

深刻理解width:auto

常见4种宽度表现 充分利用可用空间 默认块元素都是100%父元素宽度,这点大家都知道,但很多人会针对块元素写多余宽度100%。 收缩与包裹 常见是浮动,行内块元素,绝对定位。...收缩到最小 这个最容易出现在table-layout为auto表格中,我们不控制表格单元格时候,当每一都放不下时候,会把文字截断,然而手机号,英文单词,数字等不能断,就可能会导致某些只是文字...默认情况下特性为包括性,由内容宽度决定盒子宽度,但是当(非替换元素)left/right同时设置时候,宽度为相对于最近定位特性不是static祖先元素计算。...宽度会是父元素宽度-left-right,而其他特性仍然不变。这点在我们实际布局中有很大用途,比如我分享css实用技术中变宽与固结合布局。...;} 内部尺寸与流体特性 包裹性 包括性是指当元素为非块元素时候,宽度内容决定,自己只负责根据需要扩大,而由于外部肯定是块元素,所以又不会超出容器特性。

87340

一文搞定各类前端常见布局方式

布局&圣杯布局&双飞翼布局图片圣杯布局双飞翼布局是指三行三布局,其中中间行中间元素自适应,重点在于第二行实现。...: 100px; /* 对应右宽度 */ margin-right: 100px;}/* 左中右全部浮动 */#left, #center, #right { float: left;}/* 左右定...等高布局等高布局是指一行中每高度相同布局。7.1 display(table)利用表格单元格默认等高特性,轻松实现等高布局。...如设计稿宽度为 750px,一个设计稿 25px div,设置 width: 0.25rem; 即可10.3 @media 媒体查询针对不同屏幕分辨率定义不同样式,从而达到自适应效果,例如移动端...CSS3多布局 — columncss3 提供了设置多布局属性,column-count 定义数量,column-width 定义宽度,columns 为简写,并支持设置间距、边框、横跨多

95730

CSS 中你需要知道 auto 一切!

在本文中,会先解释auto工作方式以及如何最大程度地利用auto技术细节,当然,会配合一些用例示例。 简介 auto关键字使用属性而异。 对于本文,我将在每个属性上下文中解释值。...具有flex:auto项目将根据宽度高度来调整大小,但它可以根据可用额外空间来增大或缩小。 在研究本文之前,我不知道这一点!...CSS grid 自动设置一个 auto ? 在CSS Grid中,我们可以设置一个列为auto,这意味着它宽度将基于它内容长度。...当我们有一个网格,并且其中网格项目具有margin-left: auto时:该项目将被推到右边,宽度将基于其内容长度 考虑下面的例子: ? 当我们希望item1宽度基于其内容,而不是网格区域。...好吧,原因是绝对定位元素相对于最接近父元素具有position:relative。 该父项具有padding: 16px,因此子项位于顶部左侧16px处。 有趣,不是吗?

5.1K30

Unicode中空格字符一览(翻译)

下表第三中, 每一行展示一个不同空格字符显示效果, 以“foo”“bar”这两个带边框单词间隔形式展示您浏览器可能无法正确显示所有空格字符。...浏览器其他软件支持说明Web 浏览器其他程序可能无法根据定义或描述呈现所有空格字符。许多常用字体缺少某一部分空格字符。...现代浏览器通常可以找到一个字符符号,如果系统中某些字体包含它。然而事情并不总是一帆风顺,请参阅 在 HTML 中使用特殊字符指南。此外,字体替换可能会导致不希望效果,因为字符宽度字体而异。...通常做法是将它们视为具有固定宽度(在每种字体中) ,这意味着在调整后文本中,空格非中断空格具有不同效果。...它们形状字体而异,尤其是最后一种变化很大。

7.1K00

css display属性值及用法_css clear作用

链接:http://www.css88.com/archives… display: block 设置元素为块状元素,如果不指定高,默认会继承父元素宽度,并且独占一行,即使宽度有剩余也会独占一行,高度一般以子元素撑开高度为准...inline-block既具有block高特性又具有inline同行元素特性。...CSS表格能够解决所有那些我们在使用绝对定位浮动定位进行多布局时所遇到问题。例如,display:tableCSS声明能够让一个HTML元素和它子节点像table元素一样。.../blo… 实例:实现一个固定宽度内容可变列表 目前我有一个需求,有一个列表页,左侧固定,右侧固定,总宽度固定,但是左侧内容可能会增加,右侧内容也可能会增加,要求平时一行展示,增加时候两行展示...默认值为0,也就是不具有弹性。

2.4K10

html+css学习笔记012-表格

td{ border:1px solid #ff9999; 表格边框颜色 } table一般特性: th 内容上下左右居中,并且加粗 td 内容 上下居中 左对齐 单元格默认平分...table宽度 tbody会平分高度 thead tfoot里面的th td 内容撑开 table固定宽度时,td 不固定宽度时,按照内容百分比平分宽度 table固定宽度时...,td 固定宽度时,完全平分宽度 table固定高时,宽度不能被撑大,高度能撑大 单元行最大宽度高度取决于最高单元格 table不给高时由内容撑开 table...特性: 默认占据一行 支持margin margin auto th,td: 不支持margin,支持padding table组标签里面不要放除了表格标签外其他标签元素...-- 表格尾 --> colspan 跨越表格(数上自己) rowspan 跨约表格行(数上自己) <

1.3K30

CSS 世界》读书笔记-流与

因为在阅读本书 CSS “流” 相关内容时让我有了一种恍然大悟感觉,所以才有了此篇读书笔记。...正是由于 “块级元素” 具有换行特性,因此理论上它都可以配合 clear 属性来清除浮动带来影响。 点击 内联元素:inline element 与块级元素负责结构不同,内联元素负责内容。...穿着 inline 皮藏着 block 心 每个元素都有两个盒子,外在盒子内在盒子。外在盒子负责让元素可以一行显示,还是只能换行显示;内在盒子负责高、内容呈现什么,也叫容器盒子。...给子元素  标签设置了 width: 100%,此时 内容宽度 已经等于外元素宽度,所以超出尺寸是设置 margin padding。...之前讨论块级元素内联元素,当我们在谈论它们是在一行还是换行显示时,实际上是谈论外在盒子。而内在盒子实际是负责了元素内容

1.2K20

全栈之前端 | 6.CSS3基础知识之网页几种布局方法学习(2)

# 多布局 multicol column-count: 创建指定数量 column-width: 创建具有弹性宽度(尽可能按照宽度创建,若容器与宽度成比例数量) column-fill:...网格布局相关属性 column-count: 创建指定数量 column-width: 创建具有弹性宽度(尽可能按照宽度创建,若容器与宽度成比例数量) column-fill:此属性控制在分解为时如何平衡元素内容...,如果容器宽度小于指定值,则单列宽度将小于声明。...、样式颜色 描述: 此 CSS 属性设置多布局中在之间绘制线宽度、样式颜色。...标签元素常用于显示表格数据,在CSS发展历史中 web 开发人员过去也常常使用表格来完成整个网页布局——将它们页眉、页脚、不同等等放在不同表行中,现在它通常会被用于兼容一些不支持Flexbox

20720

【基础】固定表格及示例演示

引言 对我来说,table 有一个非常有用,支持性也很好 CSS 属性,但它却很少为人所知。它改变了表格渲染方式,并生成一个更加稳定可靠布局。...对我来说效果十分怪异,具体见如下演示: [表格样式] 查看演示效果 fixed属性值 应用 table-layout: fixed之后,查看演示效果,可以得出如下结论: 给单元格指定宽度值生效 overflow...该表格是固定,不根据内容多少而变化;表格内容不折行显示,超出行宽部分加省略号部分显示。 [表格样式] 查看演示效果 上述表格显示效果已经很好了,也比较接近实际项目的需要。...固定表格算法效果更容易预见,便于使用,同时渲染速度明显更快。因为表格内容并不会影响单元格宽度,所以在页面加载过程中,表格不需要频繁重绘。...相信我们都对页面加载过程中表格不断重新调整列恐怖情景记忆犹新。对于固定表格来说,这种情况就不会发生了。 本文主要汇编自 Chris Coyier 一篇博客。

1.4K20

(译)一篇对css网格布局介绍

css3 Grid Layout 表格布局是在css中强大难以置信布局模块。它是二维空间,所以它可以处理行 它有些类似于Flexbox,但是又有本质差别。...只要我们这样声明了,这个父元素所有直属子元素就变成了表格项目。在这点上Flexbox是类似的。你会注意到css Gird 所有的表格样式都是定义到父元素上边。...现在我们有了3,并分别给了他们100px 100px 200px宽度。如果我们继续添加子元素,新增加元素素会继续按照100px 100px 200px宽度顺序 ?...(一个份数) 宽度是可变(屏幕宽度一个份数) 表格宽度根据容器宽度元素之间间距计算出来 ?...我们可能想要一宽度是固定,其他两宽度相等。

3.3K30

React:Table 那些事(2)—— 解读 W3C 规范

:背景; width:指定最小宽度; visibility:collapse,不渲染; —— https://www.w3.org/TR/CSS22/tables.html#columns, 17.3...水平布局仅取决于表格宽度宽度表格边框宽度、单元格间距,而与单元格内容无关。...(注意:当表格宽度确定后,适用于块级元素其他特性,同样也适用于表格) 图:Table 宽度特性 ? ?...计算规则: 若“元素(col、colgroup)”指定了宽度,则采用此宽度; 若“元素”未指定宽度,但第一行中单元格指定了宽度,则采用此宽度; 所有没法确定宽度,平分剩余空间; tableWidth...若两个或多个边框相邻,合并规则为: border-style:hidden,优先级最高,这个位置上所有边框都隐藏; 若宽度不同,边框 > 窄边框; 若宽度相同,则看边框样式:double > solid

2.4K30

CSS布局解决方案(上)

(类似 ),再通过设置属性,使表格单元格内容垂直居中以达到垂直居中。...(2)代码实例 (3)优缺点 优点:只设置了parent 缺点:兼容性存在一定问题 定+自适应 1)使用float+overflow (1)原理、用法 原理:通过将左边框脱离文本流,设置右边规定当内容溢出元素框时发生事情以达到多布局...(2)代码实例 (3)优缺点 优点:简单 缺点:ie6下兼容性存在一定问题 2)使用table (1)原理、用法 原理:通过将父框改变为表格,将左右框转换为类似于同一行td以达到多布局,设置父框宽度...100%,给左框子元素一个固定宽度从而达到自适应。...(2)代码实例 (3)优缺点 缺点:ie6 ie7不支持 3)使用flex (1)原理、用法 原理:通过设置CSS3布局利器flex中flex属性以达到多布局,加上给左框中内容、给右框设置flex

1.2K40

Flutter 视图布局(三)

但几乎好像每一个编程语言具有UI绘制部分都会有 Table。也许是它们对表格爱得深沉(大雾!) 依照惯例,我们现在需要做什么呢? 没错!当然是看源码部分啦。...表格 FlexColumnWidth defaultColumnWidth Tabel 中宽度分配方式,基于  Flex TableCellVerticalAlignment defaultVerticalAlignment...其他相对消耗较小算法有 [FlexColumnWidth],它可以弹性分配所需空间。 [FractionColumnWidth] 是基于 Table 容器最大宽度。...当然除了以上提到类型之外还有其他类型 IntrinsicColumnWidth 固有,但单元格以弹性方式计算 FixedColumnWidth 固定 FractionColumnWidth...(可能我英语水平不够实在是想不到好中文解释) FlexColumnWidth 弹性,defaultColumnWidth 中默认类型 MaxColumnWidth 最大参数类型为 TableColumnWidth

1.3K70

响应式设计

给所有用户提供同一份 HTML CSS。通过使用几个关键技术,根据用户浏览器视口大小(或者屏幕分辨率)让内容有不一样渲染结果。这种方式不需要分别维护两个网站。...首先,它告诉浏览器当解析 CSS 时将设备宽度作为假定宽度,而不是一个全屏桌面浏览器宽度。其次当页面加载时,它使用 initial-scale 将缩放比设置为 100%。...在流式布局中,主页面容器通常不会有明确宽度,也不会给百分比宽度,但可能会设置左右内边距,或者设置左右外边距为 auto,让与视口边缘之间产生留白。也就是说容器可能比视口略窄,但永远不会比视口。...在主容器中,任何都用百分比来定义宽度(比如,主 70%,侧边栏 30%)。这样无论屏幕宽度是多少都能放得下主容器。...# 给大视口添加样式 https://codepen.io/cellinlab/pen/bGaxYNb # 处理表格 在移动设备流式布局里,表格问题特别多。如果表格太多,很容易超过屏幕宽度

2K10
领券