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

深入学习下 CSS 间距相关的知识

折叠 简而言之,两个垂直元素有一个,并且其中一个的大于另一个,就会发生折叠。 在这种情况下,将使用较大的,而忽略另一个。...editors=1100 另一个类似的概念是添加填充,然后边为负。...使用 CSS 网格,你可以使用 grid-gap 轻松添加间距。 此外,你不需要关心网格项目的宽度或底部CSS Grid 为你做一切!...组件封装 一个大型设计系统包含如此多的组件, 直接它们添加是否合乎逻辑? 考虑以下示例。...对于大型设计系统,不断为组件添加是不可扩展的。这最终将导致令人毛骨悚然的代码。 间隔组件的挑战 现在你已经了解了间隔组件的概念,让我们深入了解使用它们的一些预期挑战。

13.3K40

译|CSS中的间距,前端开发中各种设置间距的优点缺点及实例

如果两个或多个元素很接近,那么用户就会认为它们以某种方式属于彼此。对多个设计元素进行分组,用户可以根据它们之间的空间大小来决定它们之间的关系。...margin 折叠 简而言之,两个垂直元素具有margin,并且其中一个元素的margin大于另一个元素,发生折叠。在这种情况下,将使用更大的margin,而另一个将被忽略。 ?...更好的解决方案是通过父元素添加来取消不需要的间距。 .wrapper { margin-bottom: -16px; } 它用一个等于底部间距的值将元素推到底部。...结果表明,基于 writing-mode 的页工作得非常好。 我认为这些用例就足够了。让我们继续一些有趣的概念! 组件封装 大型设计系统包含许多组件。其直接添加是否合乎逻辑?...对于大型设计系统,不断组件添加margin是不可伸缩的。这将最终导致一个令人毛骨悚然的代码。 间隔组件的挑战 现在你了解了间隔组件的概念,让我们深入研究使用它们遇到的一些挑战。

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

CSS 中你需要知道 auto 的一切!

Flexbox 在某些情况下,在flexbox中使用自动页非常有用。一个子项目有一个margin是auto ,它将被推到远的另一。...使用CSS网格,可以使用自动页实现类似于 flexbox 的结果。...更好的是,使用flexbox或grid属性,以防使用它们完成工作。 如果没有,那么请使用自动页作为最后的选择,而应使用CSS逻辑属性。...Flexbox 和 自动 谈到flexbox,它有无限的可能性。 通过将其与自动相结合,我们可以构建功能强大的布局。 考虑下面的例子 ? 我们在右侧包含一行标题,描述和一个操作按钮的行。...CSS将如下所示: .item__action { margin-inline-start: auto; } CSS grid 和自动网格项目添加,它可以是固定值,百分比或自动值

5.1K30

伪元素的妙用–单标签之美

CSS2及CSS3伪类区分 CSS3伪元素单双冒号区分 有时你会发现伪类元素使用两个冒号 (::) 而不是一个冒号 (:),这是 CSS3 规范中的一部分要求,目的是为了区分伪类和伪元素,大多数浏览器都支持这两种表示方式...本文的主角就是伪元素 before 和 after ,下面将具体讲讲这两个伪元素的魅力。 哪些标签不支持伪元素?(补充于2016.06.28) 我也是知道这个姿势。...但是在制作雪碧图的过程中,或者现在很多的打包工具自动生成的雪碧图,都存在着需要为每个 icon 需要预留多少的问题。...看看下图: 譬如上面这种情况(假设按钮中的图标是采用了雪碧图),产品某天突然要求按钮从状态左变为状态右,那么雪碧图原先预留的位置肯定就不够了,导致其他图形出现在按钮中。...所以通常这种情况需要用到雪碧图的话,都是在按钮中设置一个伪元素,将伪元素的高宽设置为原本 icon 的大小,再利用绝对定位定位到需要的地方,这样无论雪碧图每个 icon 的是多少,都能够完美适应。

76910

CSS进阶】伪元素的妙用--单标签之美

有时你会发现伪类元素使用两个冒号 (::) 而不是一个冒号 (:),这是 CSS3 规范中的一部分要求,目的是为了区分伪类和伪元素,大多数浏览器都支持这两种表示方式。...本文的主角就是伪元素 before 和 after ,下面将具体讲讲这两个伪元素的魅力。  哪些标签不支持伪元素?(补充于2016.06.28) 我也是知道这个姿势。...但是在制作雪碧图的过程中,或者现在很多的打包工具自动生成的雪碧图,都存在着需要为每个 icon 需要预留多少的问题。看看下图: ? -->  ?...譬如上面这种情况(假设按钮中的图标是采用了雪碧图),产品某天突然要求按钮从状态左变为状态右,那么雪碧图原先预留的位置肯定就不够了,导致其他图形出现在按钮中。...所以通常这种情况需要用到雪碧图的话,都是在按钮中设置一个伪元素,将伪元素的高宽设置为原本 icon 的大小,再利用绝对定位定位到需要的地方,这样无论雪碧图每个 icon 的是多少,都能够完美适应。

1.1K120

如何用自己喜欢的 CSS 风格重置网站的样式

一些人喜欢在 Normalize.css添加一些自己偏好的样式,我也一样。 在本文中,我会与你分享我自己的 CSS reset 项(除了 Normalize.css 之外我还使用它们)。...我将 reset 项分为8类: 盒子大小 删除和填充 列表 表格和按钮 媒体元素 表格 隐藏属性 Noscript 调整盒子大小 box-sizing 属性改变了 CSS 盒子模型的工作方式。...1html { 2 box-sizing: border-box; 3} 4*, 5*::before, 6*::after { 7 box-sizing: inherit; 8} 删除和填充...当我不了解这些,默认设置会让我失望。但是我更喜欢通过自己编码设置所有边和填充。...这是我的默认样式: 1table { 2 table-layout: fixed; 3 width: 100%; 4} 元素具有 hidden 属性,应该从视图中隐藏它们。

1.4K30

CSS伪元素的妙用--单标签之美

伪类大家听的多了,伪元素可能听到的不是那么频繁,其实 CSS 对这两个是有区分的。 ?...有时你会发现伪类元素使用两个冒号 (::) 而不是一个冒号 (:),这是 CSS3 规范中的一部分要求,目的是为了区分伪类和伪元素,大多数浏览器都支持这两种表示方式。...但是在制作雪碧图的过程中,或者现在很多的打包工具自动生成的雪碧图,都存在着需要为每个 icon 需要预留多少的问题。看看下图: ? –> ?...譬如上面这种情况(假设按钮中的图标是采用了雪碧图),产品某天突然要求按钮从状态左变为状态右,那么雪碧图原先预留的位置肯定就不够了,导致其他图形出现在按钮中。...所以通常这种情况需要用到雪碧图的话,都是在按钮中设置一个伪元素,将伪元素的高宽设置为原本 icon 的大小,再利用绝对定位定位到需要的地方,这样无论雪碧图每个 icon 的是多少,都能够完美适应。

1.6K100

CSS】课程网站头部制作 ⑤ ( 用户栏测量 | 用户栏代码编写 | 代码示例 )

, 需要使用 padding 内边的方式设置 ; 文字垂直居中对齐 , 需要使用 内容高度 = 行高 的方式设置 ; 核心代码 : 2、CSS 样式 核心代码样式 : 首先 , 设置用户栏盒子 为浮动 , 这样可以与 logo 盒子 , 导航栏盒子 , 搜索栏盒子.../ color: #666666; } /* 用户栏 头像样式 */ .user .user-img { float: left; /* 用户头像 30 像素 容器高 42 上下各 6 像素...字体大小 */ font-size: 18px; /* 字体颜色 */ color: #050505; /* 取消链接下方的横线 */ text-decoration: none; /* 调试使用的背景.../ color: #666666; } /* 用户栏 头像样式 */ .user .user-img { float: left; /* 用户头像 30 像素 容器高 42 上下各 6 像素

2.4K30

细细品读!深入浅出,官方文档看ConstraintLayout

、Start、End 纵向:Top、Bottom、Baseline(文本底部的基准线) 通常是一条另一条添加约束,就像下面按钮B要定位在按钮A的右边一样: ?...这样系统就会知道按钮B的左侧被约束在按钮A的右侧,这里的约束可以理解为的对齐。 ?...来主要看一下外边的新属性:GONE MARGIN 以图 3为例,这里的gone margin指的是BA添加约束后,如果A的可见性变为GONE,这时候B的外边可以改变,也就是B的外边根据...相同方向上(横向或纵向),控件两同时ConstraintLayout添加约束,情况就会像图 4所示的这样。 ? 而代码的书写是这样的: ?...Chain外边 如果连接定义了外边,Chain就会发生变化。在SPREAD CHAIN中,外边会从已经分配好的空间中去掉。原文如下: ?

94040

你不知道的 CSS

【负】?负的效果。注意左右负表现并不一致。左为负,是左移,右为负,是左拉。上下与左右类似 ? 02.【shape-outside】❤不要自以为是了。...css绘制彩带的原理 ? 19.【隐藏文本】?隐藏文字内容的两种办法 ? 20.【居中】?实现居中的一种简单方式 ? 21.【角渐变】?新的渐变:角渐变。可以用来实现饼图 ? 22....【outline使用】?可以使用outline来描,不占地方,它甚至可以在里面 ? 27【背景定位】?固定背景不随元素滚动,背景定位是相对于视口的 ? 28【tab-size】?...按钮禁用时,不要忘了设置鼠标状态 ? 32【背景虚化】?使用CSS滤镜实现背景虚化 ? 33【fill-available】?...使用grid布局实现sticky footer ? 43【动画填充状态】?CSS可以设置动画开始前和结束所保持的状态 ? 44【动画负延迟】?

1.2K30

你未必知道的49个CSS知识点

【负】?负的效果。注意左右负表现并不一致。左为负,是左移,右为负,是左拉。上下与左右类似 ? 02.【shape-outside】❤不要自以为是了。...css绘制彩带的原理 ? 19.【隐藏文本】?隐藏文字内容的两种办法 ? 20.【居中】?实现居中的一种简单方式 ? 21.【角渐变】?新的渐变:角渐变。可以用来实现饼图 ? 22....【outline使用】?可以使用outline来描,不占地方,它甚至可以在里面 ? 27【背景定位】?固定背景不随元素滚动,背景定位是相对于视口的 ? 28【tab-size】?...按钮禁用时,不要忘了设置鼠标状态 ? 32【背景虚化】?使用CSS滤镜实现背景虚化 ? 33【fill-available】?...使用grid布局实现sticky footer ? 43【动画填充状态】?CSS可以设置动画开始前和结束所保持的状态 ? 44【动画负延迟】?

1.3K20

你未必知道的49个CSS知识点

【负】?负的效果。注意左右负表现并不一致。左为负,是左移,右为负,是左拉。上下与左右类似 ? 02.【shape-outside】❤不要自以为是了。...css绘制彩带的原理 ? 19.【隐藏文本】?隐藏文字内容的两种办法 ? 20.【居中】?实现居中的一种简单方式 ? 21.【角渐变】?新的渐变:角渐变。可以用来实现饼图 ? 22....【outline使用】?可以使用outline来描,不占地方,它甚至可以在里面 ? 27【背景定位】?固定背景不随元素滚动,背景定位是相对于视口的 ? 28【tab-size】?...按钮禁用时,不要忘了设置鼠标状态 ? 32【背景虚化】?使用CSS滤镜实现背景虚化 ? 33【fill-available】?...使用grid布局实现sticky footer ? 43【动画填充状态】?CSS可以设置动画开始前和结束所保持的状态 ? 44【动画负延迟】?

1.5K20

你未必知道的49个CSS知识点

【负】?负的效果。注意左右负表现并不一致。左为负,是左移,右为负,是左拉。上下与左右类似 ? 02.【shape-outside】❤不要自以为是了。...css绘制彩带的原理 ? 19.【隐藏文本】?隐藏文字内容的两种办法 ? 20.【居中】?实现居中的一种简单方式 ? 21.【角渐变】?新的渐变:角渐变。可以用来实现饼图 ? 22....【outline使用】?可以使用outline来描,不占地方,它甚至可以在里面 ? 27【背景定位】?固定背景不随元素滚动,背景定位是相对于视口的 ? 28【tab-size】?...按钮禁用时,不要忘了设置鼠标状态 ? 32【背景虚化】?使用CSS滤镜实现背景虚化 ? 33【fill-available】?...使用grid布局实现sticky footer ? 43【动画填充状态】?CSS可以设置动画开始前和结束所保持的状态 ? 44【动画负延迟】?

1.2K10

细细品读!深入浅出,官方文档看ConstraintLayout

、End 纵向:Top、Bottom、Baseline(文本底部的基准线) 通常是一条另一条添加约束,就像下面按钮B要定位在按钮A的右边一样: ?...:GONE MARGIN 以图 3为例,这里的gone margin指的是BA添加约束后,如果A的可见性变为GONE,这时候B的外边可以改变,也就是B的外边根据A的可见性分为两种状态。...相同方向上(横向或纵向),控件两同时ConstraintLayout添加约束,情况就会像图 4所示的这样。 ?...Chain外边 如果连接定义了外边,Chain就会发生变化。在SPREAD CHAIN中,外边会从已经分配好的空间中去掉。...例如,一个Chain中包含两个使用MATCH_CONSTRAINT的元素,第一个元素使用的权重为2,第二个元素使用的权重为1,那么被第一个元素占用的空间是第二个元素的2倍。

88130

Web-第二天 HTML表单&CSS【悟空教程】

radio:单选框,表示一组互斥选项按钮中的一个。一个按钮被选中,之前选中的按钮就变为非选中的 。 submit:提交按钮。提交按钮会把表单数据发送到服务器。...1.2.3 CSS的概述 1.2.3.1 CSS是什么 CSS 通常称为CSS样式或层叠样式表,主要用于设置HTML页面中的文本内容(字体、大小、对其方式等)、图片的外形(高宽、边框样式、等)以及版面的布局等外观显示样式...层叠:使用不同的添加方式,给同一个HTML标签添加样式,最后所有的样式都叠加到一起,共同作用于该标签。 1.2.3.3 CSS样式规则 使用HTML,需要遵从一定的规范。...内嵌式CSS样式只对其所在的HTML页面有效,可以对多处标签统一设置样式,因此,设计一个页面使用内嵌式是个不错的选择。...1.2.6 CSS的盒子模型 1.2.6.1 什么是盒子模型 CSS 框模型 (Box Model) 规定了元素框处理元素内容、内边、边框 和 外边 的方式。 ?

4.2K40

JQuery笔记

JQuery事件 click() 点击事件 dblclick() 双击元素,会发生 dblclick 事件 mouseenter() 当鼠标指针穿过元素,会发生 mouseenter 事件 mouseleave...() 当鼠标指针离开元素,会发生 mouseleave 事件 mousedown() 当鼠标指针移动到元素上方,并按下鼠标按键,会发生 mousedown 事件 mouseup() 当在元素上松开鼠标按钮...,会发生 mouseup 事件 hover() 方法用于模拟光标悬停事件 focus() 元素获得焦点,发生 focus 事件 blur() 元素失去焦点,发生 blur 事件 JQuery 效果...默认是 false,即停止活动的动画, 允许任何排入队列的动画向后执行。 可选的 goToEnd 参数规定是否立即完成当前动画。...类 addClass() - 被选元素添加一个或多个类 removeClass() - 从被选元素删除一个或多个类 toggleClass() - 对被选元素进行添加/删除类的切换操作 css() -

6.1K20

前端入门学习--CSS

请慎用这种方法,例如样式需要在一个元素上应用一次。 要使用内联样式,你需要在相关的标签内使用样式(style)属性。Style 属性可以包含任何 CSS 属性。...Margin - 单边外边属性 在CSS中,它可以指定不同的侧面不同的: <!...Padding(填充) 元素的Padding(填充)(内边)被清除,所”释放”的区域将会受到元素背景颜色的填充。 单独使用填充属性可以改变上下左右的填充。...使用CSS添加背景、格式化文本、以及格式化边框,并定义元素的填充和。...使用CSS定位元素、控制元素的可见性和尺寸、设置元素的形状、将一个元素置于另一个之后,以及某些选择器添加特殊的效果,比如链接。

27.6K20

【Jquery练习】tab栏切换

---- 文章目录 前言 排他思想 按钮切换 HTML、CSS jQuery Tab栏切换实现效果 HTML部分 CSS部分 Jquery部分 总结 ---- 前言 ---- 排他思想 在实现今天的练习之前.../v/embed/243098 按钮切换 HTML、CSS 按钮2 按钮3 jQuery 实现思路: 1、添加点击事件 2、将当前点击按钮的背景色改成粉色...}); Tab栏切换实现效果 本次练习实现的效果是当鼠标点击tab页面标签栏,tab页面内容也相应发生改变,如下是实现的效果,接下来跟着笔者一起来试试吧~ HTML...2、设置标签栏的宽度、高度,并清除li的默认样式,设置边框、,使文字居中显示。 3、为内容结构部分设置宽度、高度、背景色、。 4、设置标签栏第一个元素的底色,颜色,用于区分。

5.8K30
领券