Paul Irish 最近 发表了一篇博文,介绍如何使用通用选择器为所有元素设置border-box
box-sizing
* {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
我一直想尝试一下,我很高兴地说我已经在几个项目中使用了它,并且效果非常好。 它也让我思考还有哪些其他属性可以类似地应用于页面上的所有元素。
过渡
* {
-webkit-transition: all 0.2s ease;
-moz-transition: all 0.2s ease;
-ms-transition: all 0.2s ease;
-o-transition: all 0.2s ease;
}
如果您使用的是桌面浏览器,请立即试一试。 打开浏览器的开发者工具并添加一个新的 CSS 规则。 我碰巧在使用 Chrome,所以
我刚刚在撰写此文的 WordPress 仪表板中尝试了一下,感觉非常有趣,尤其是在侧边导航中。 性能肯定是一个需要关注的问题,所以我并不完全提倡现在就使用它,但玩玩还是很有趣的。 当页面上的所有元素都具有快速且相同的过渡时,我发现它有一种不错、柔和、舒适的感觉。
非重复背景
我敢打赌,总的来说,您设置背景为no-repeat
的次数要多于实际让它们重复的次数。
* {
background-repeat: no-repeat;
}
这样您就可以
.logo {
background-image: url(logo.png);
}
无需担心您设置的图像会重复并变得奇怪,即使容器略大于徽标。 您也不必使用背景的简写形式,该形式会设置/重置background-color
、background-attachment
和background-position
,无论您是否需要。
我知道 Estelle Weyl 是粉丝。=)
相对定位
* {
position: relative;
}
如果所有元素都以相对定位开始,则意味着z-index
“正常工作”,而不是默认静态定位元素忽略它的令人困惑的问题。 这也意味着更容易使用top
、left
、right
和bottom
调整元素位置,这些属性在相对定位元素上“正常工作”。 将其应用于现有布局可能很困难,但从头开始使用它应该不太难。
垂直居中对齐
* {
vertical-align: middle;
}
我发现自己经常设置此值,尤其是在 使用图标 的项目中。 在我尝试应用它的大多数布局中,它不会产生太大影响,因为它只在内联或内联块元素在同一行上彼此对齐时才会出现。 本质上,我发现自己设置它的次数多于重置默认值,我认为这使其成为通用设置的良好候选者。
* {position: relative;}
将导致 IE6 崩溃,这可能是件好事,也可能不是...另外,我如今几乎在所有项目中都使用了过渡,它在链接的:hovers上非常不错,而且我还没有遇到任何性能问题。
“
* {position: relative;}
将导致 IE6 崩溃,这可能是件好事,也可能不是... ”呵呵
我不知道,我老实说非常不喜欢 IE 6,并且没有避免创建一个即使兼容但通过使用带有样式代码的 if 语句(例如
*{display:none};
)在 IE 6 中完全不可见的网站,只是为了戏弄 IE 6 用户。当我读到那个 IE6 评论时,我也笑了。
我支持你。
我已经使用
* { transition: all 0.2s ease; }
一段时间了,从未注意到任何速度问题。 即使在低带宽的情况下。感谢你的提示,我现在将把它添加到我所有的网站中=)
哈哈!!:D IE6??? 真的???:D :D
导致 IE6 崩溃? 我来了!!
导致 IE6 崩溃?算我一个=)
哈哈,知道这一点稍微缓解了一些痛苦。
哈哈,不错!
也许我现在真的会用这个了。
不错!直接使用了!
IE6 哦天哪! :)
那么这段代码将完美无缺:D
@Julien,你是认真的吗?
> 即使在低带宽的情况下。
CSS 和客户端渲染与带宽有什么关系?
至于`* { position:relative }`。 你有没有意识到你将一劳永逸地失去绝对定位事物的能力?
@Julien,他的意思是客户端渲染性能,而不是网络性能 :)
这让我的一天变得美好!:D
尽管我认为
*{position: relative;}
会很棒,我应该尝试一下,但我对 IE 6 已经不那么关心了,我认为我们都应该如此。 IE 6 现在已经死了,虽然我们中的一些人….虽然我们中的一些人让 IE 7 满足 IE 6 的条件,但我认为现在是停止关心它并专注于淘汰 IE 7 的时候了。 IE 7 是我唯一看到的带有主要错误(即错误的边距)的浏览器,所以我认为是时候开始淘汰它了。
愚蠢的回复者……你是否只为自己制作网站,还是为了让一些内容对用户可用,无论他们使用什么工具?你们这群愚蠢的堕落的自私自负的伪开发者。可用性和可访问性应该是你主要关注的问题,而不是你那小设备的大小。错位的虚荣心。
自从我在你的博客上(当然)学到这些知识以来,我一直使用以上方法:) 通用缓动过渡非常有效。 但我已经不再关心 IE 6 了。使用它的人应该意识到我们生活在 21 世纪。
有趣的是你居然会这么说。 你必须记住,互联网仍然非常年轻,发展非常迅速。
IE6 **确实**是在 21 世纪推出的。它于 2001 年 8 月 27 日推出(在 Windows XP 完成后)。
在过去的 10 年里,互联网已经变成了一个全新的野兽。 10 年后,它将成为一个完全不同的野兽。 再过 10 年,又会是另一个。 这就是技术发展的方式。
我不会在通用选择器上使用 position: relative。
我经常发现自己将其用于某些子元素使用 position: absolute 的元素。这允许我使用父元素的位置作为参考点,而不是页面开头。
如果每个元素都是相对的,使用这种技术会变得更加复杂,或者在某些情况下甚至是不可能的。
我认为你的意思是,你并不*总是*希望定位上下文是父元素,就像所有元素都是相对元素时一样。在这种情况下,你可以将父元素重置回 static。但确实可能很奇怪。
是的,正是如此。
如果具有 position: absolute 的元素具有*许多*祖先,将祖先重置为 static 所需的代码可能比仅在实际需要它的元素上声明“position: relative”更多。
对所有元素应用过渡可能会成为性能噩梦。这些功能是有代价的,我们应该适度使用。
我也建议不要在所有地方都使用 border-box。它本身也存在一些问题。例如,你失去了指定宽度和渲染宽度之间的 1:1 关系。使用 border-box,你可能会得到
width: 20px;
和width:0;
来获得相同的结果。此外,还有一些与之相关的浏览器错误,例如 Gecko 在 (min|max)-(width|height) 属性中不尊重它。我喜欢其他的内容,Chris 的文章写得很好!
在使用“transition: all”时要小心。使用它时,我遇到了巨大的性能问题。并且与“*”选择器结合使用时,这可能确实像你所说的那样成为“性能噩梦”。我喜欢睡个好觉 :-)
Lea,你能解释一下你如何“失去指定宽度和渲染宽度之间的 1:1 关系”吗?我以为这就是“border-box”的用途。将宽度设置为 100px,则渲染宽度(包括内边距和边框)为 100px。
此外,有没有人可以提供与“border-box”相关的浏览器错误的参考链接?
不仅过渡性能不足……带有悬停效果的按钮的 CSS 精灵也会看起来很糟糕……
我总是听说要避免使用 * 选择器,因为它是一个“昂贵”的选择器,就性能而言。这就是为什么 CSS 重置在 padding:0px; margin:0px 等之前有那么一大串选择器……
这种想法改变了吗?
我也非常想知道这个问题的答案.. 如果有的话哈哈。
我不认为 * 选择器本身会造成明显的性能损失。当你将其与其他选择器结合使用(以及你使用它来应用的内容)时,可能会开始在非常庞大、复杂的页面上造成问题。
像这样的操作会导致很大的性能拖累
但单独使用它影响不大。
理论上,单独使用 * 应该至少产生最便宜的逻辑比较,理想情况下根本没有 – 只是“无论如何都应用此规则”。
当然,实际将样式规则应用于每个元素也需要计算成本,因此,如果你不必要地针对太多元素,则会有一些额外的工作以及样式膨胀。我从未见过有人讨论将样式/属性应用于元素与通过选择器排除元素的成本有多高,因此我不知道哪种方法在什么情况下会胜过另一种方法。
Mozilla 似乎要求在时间属性上使用“s”。所以应该是 0.2s,而不是 0.2。
看起来 -webkit 也一样。
我在不兼容 IE6/7 的项目中尝试过 * { display: inline-block; }。
非常酷!出于以下原因
* 所有元素都尊重盒子模型属性和垂直对齐。
* 没有浮动,除非代码中的空白在元素之间放置了不需要的间距。有时这个间距是可以接受的,并且你无需额外努力就能获得它。
我可能错了,但我认为通用选择器在性能方面很糟糕,因为它会遍历并为每个可能的元素分配 CSS,即使你没有使用这些元素?
简短回答:否。
Chris 的链接文章对此进行了更详细的解释(“性能”部分):http://paulirish.com/2012/box-sizing-border-box-ftw/
自己想些帖子点子吧,胖子。
在一些使用 http://adapt.960.gs/ 的网站上试用了一下。
真是太有趣了!
在我在所有网站上使用它之前,请有人务必告诉我一些重要的优缺点,哈哈。
老实说,我真的很喜欢常规的盒子模型。需要一段时间才能适应它,但设置宽度并使内容实际上具有该宽度确实很不错。尤其是在涉及图像时。
除非你使用 calc(),否则在 content-box 模型中有些事情你无法做到——即使使用 calc(),它也不够优雅。
我认为你使用 content-box 的用例完全有效,尽管可能在经常遇到的场景中属于少数。
此外,你始终可以使用
img { box-sizing: content-box; }
其中一些很酷。我不确定过渡,因为即使它们没有被激活,它们也可能消耗大量的 UA 资源。
除了 IE 6 之外,position relative 的缺点是减少了控制。我的意思是,很多时候,将对象相对于祖先绝对定位非常有用。因此,如果我们使用 *’ed {position:relative} 对每个元素进行设置,我们将需要返回并分别将 position:static 分配给所有我们希望“跳过”的元素,因此在代码量方面,我们回到了最初的状态。:/
哦,我们不要忘记 *{} 规则对表单元素能造成什么影响,这些影响无法重置。
你在想
position: absolute;
position: relative;
将元素相对于其自然坐标定位(“自然”是指好像根本没有使用定位一样)。@BrianMB – 关键是绝对位置基于最近的父元素(其位置不是 static)。如果所有元素都是相对定位的,则默认情况下,绝对定位始终相对于元素的直接父元素,如果你需要基于某个更远的父元素进行定位,这会更加困难。
过渡的那个提醒了我 WebDesignerDepot.com 上一篇比较旧的文章,其中提到了类似的技术
http://www.webdesignerdepot.com/2010/01/css-transitions-101/
有趣的是,Lea 建议不要将其用于盒子模型,而 Paul Irish 建议使用它。两人都是专家,所以我该相信谁呢?
我认为更重要的是在决定是否使用它时要了解其后果。Lea 提到了在全局使用它时的一些问题,因此,如果你不习惯处理这些问题,那么你可能不应该使用它。
喜欢 background-repeat 的建议。出于性能原因,将避免对所有内容进行过渡。
已经开始玩得挺开心的,只是使用 Stylish,并将全局过渡应用于每个网页——它有点有趣,但有时也有些古怪……
不过很容易尝试。
我之前在几个项目中使用过
* { transition:0.1s; margin:0; padding:0; }
(以及 Prefix Free 来处理供应商前缀),它确实为我节省了一些时间。
我通常反对为特定事物(如颜色等)设置类,但您提供的使用此类类进行对齐等的示例很有趣。
虽然不必更改您的标记很好,但如果您有一些元素在很长一段时间内肯定不会更改,那么此技术确实非常实用。
正如您所说,我只是尝试了WP仪表板的
*
规则,发现背景完美地改变了!非常棒的效果。我也很喜欢其他设置非重复背景和居中对齐的想法。我经常遇到这些问题。谢谢!
IE6中不是
box-sizing: border-box;
是默认的盒子模型吗?所以第一个规则应该可以在浏览器之间安全使用,不是吗?只有在怪异模式下(很少见)
我之前在一个项目中使用过“* {position: relative}”,尽管我真的很喜欢它在现代浏览器中的效果,但IE8的表现非常糟糕。
我最终创建了一个单独的文件来修复IE8/7,并且遇到了很多(奇怪的)问题。甚至Firefox 5也有一些问题。
其中一些问题通过设置
html {position: static}
得以解决.. 这是在尝试了一些可能有效的随机愚蠢操作几个小时之后.. 我有一些表格,并且单元格内的定位非常错误,还有一些行高怪异..总的来说,不值得,而且性能也很糟糕,我重写了样式表,使用了我在各种帖子中找到的CSS性能技巧,并且确实使IE8中的页面更加流畅/快速。
这篇文章非常好,我甚至玩过Opera的CSS性能工具;对我来说,这些指南非常有用
https://mdn.org.cn/en/Writing_Efficient_CSS
我发现,在通用选择器上使用过渡会导致基于Webkit的浏览器出现奇怪的文本大小调整问题,而如果您像下面那样拼写出html元素,则不会发生这种情况
不过,我没有注意到在通用选择器上使用过渡会占用大量资源。你会怎么注意到?所有动画似乎都按预期工作
在每个元素上设置相对位置只是“错误的”:p,我认为这会在旧版浏览器中导致很多问题。但除此之外,我真的很喜欢非重复背景的想法。
如果为每个元素设置过渡,我也会有点担心性能,但你可以像这样使用它,这样它就不会匹配每个项目。
* { background-repeat: no-repeat }
不适用于所有背景图像,因为如果您使用简写属性
.logo { background-image: url(logo.png) }
未指定的单个属性将设置为其默认值,即“background-repeat”将设置为“repeat”。由于选择器的特异性更高,因此将应用此值。
要为所有背景图像设置“no-repeat”,您必须将其设置为“!important”——并面临所有由此带来的麻烦。
在您的示例中,您没有使用简写属性——事情将按预期工作。
但是,如果您使用简写,是的,事情会出错。
我喜欢no-repeat的想法,直到我意识到它没有实际用处。如果您正在编写详细的CSS,那么切换到简写将比这个想法获得更多收益。可惜浏览器制造商最初没有将no-repeat设置为默认值。
哎呀,直到现在我还以为使用*在性能方面相当昂贵。显然事实并非如此。很高兴知道 :-)
我发现它在关闭移动设备(如iPad和iPhone)的悬停属性时很有用,否则您必须双击按钮。您可以使用其他方法,但这既快速又简单,您只需将其放置在@media查询中即可。
*hover { display:none; }
现在,当您尝试通过检查器添加*时,Chrome 17会崩溃?这之前没有发生过
我也注意到了这一点。
我对最近使用通用选择器的趋势感到非常惊讶。几年前,当我们都使用* { padding: 0; margin: 0 }来重置样式时,很快发现这并不是最佳实践,我们转向了更具选择性的重置样式解决方案,这样浏览器就不会因为将规则应用于所有内容而变得缓慢。
为什么现在这种做法可以接受了?为什么不创建一个更具体的重置样式片段来仅针对您希望应用box-sizing、过渡、相对等元素?
好的,我应该先通读评论。看来很多其他人也和我一样担心,但Paul Irish在这篇文章的最后讨论了*的性能问题:http://paulirish.com/2012/box-sizing-border-box-ftw/
这就像所有与IT/编程相关的事情一样。计算机、服务器、互联网连接的速度都在提高。因此,使用像* { } 这样的东西不太可能在大多数网站上造成问题,除非它极其复杂。
但是随着速度和能力的提高,我们发现自己变得不那么节俭,并且使用曾经被认为是草率的代码。
有多少人真的试图从图像中去除每一个千字节,或者编写然后重写他们的HTML和CSS以使其尽可能小和高效?当然,您应该努力做到最好,但这并不是世界末日(除非您开始将4MB的背景图像转储到页面中)
我喜欢
* { box-sizing: border-box }
背后的理论,但我也很喜欢Twitter Bootstrap框架。有谁知道它们是否可以一起工作,或者如果您尝试强制它进行边框大小调整,Twitter的精心间距是否会中断?绝对不要使用通用选择器和相对位置。我已经尝试了几年了,发现内部表格元素不喜欢它,并且会导致布局问题。(我不记得是哪个浏览器了)。但是父表格元素没问题。
最后,要回答关于父级问题的评论——IMO,所有动态内容都应该插入DOM的末尾,这意味着没有父级问题。然后可以根据DOM中原始位置的位置来计算显示position: absolute元素的位置。
不错的帖子。干杯。
我更愿意只在某些特定元素(而不是所有元素)中设置此规则,而不是
* { transition: all 0.2s ease; }
,但无论如何都要有一定的灵活性。例如这是一个控制它的好方法。一些背景图像可能会产生不太好的效果,并且失去控制是不好的。
如果我们都在任何地方使用过渡,每个人都会疯掉。
想象一下使用Gmail,并且悬停或点击某些内容总是会弹出一个无功能的(因为它就是)动画.. 那会很糟糕。我认为这只是一个暂时的炒作。边框半径也是如此。一年前,我看到许多网站使用大约20px,而现在我看到人们回到10px甚至4px,只是为了给它一点风格,但仅此而已。
看看汽车,每10年它们也会从整体风格中切换。这是一种时尚。
或者我是不是太老了?:)
仅仅是0.2或0.3秒的轻微、短暂的动画就能为网站增添一丝光彩。只有当您将鼠标悬停在链接上时才会真正注意到它。
我已经使用了数千年了
它很有趣
动画化所有内容 :)
这将为所有内容添加轮廓,而不会像添加边框那样影响布局。它非常适合检查整体布局。
我个人使用 CSS 属性“outline”,因为它输入起来更快
很棒的文章。我一直对在通用选择器中添加新内容犹豫不决,但我认为我将开始尝试其中的一些!
我尝试在我的网站中添加
*{position: relative}
,结果破坏了 WordPress 搜索栏。我无法突出显示它,并且提交按钮不会进入悬停状态。这正常吗?搜索栏及其子元素使用了什么定位?此外,您的通用选择器是在搜索样式之前还是之后?如果搜索栏定位设置为“absolute”,并且它在通用选择器之前,则通用选择器可能会覆盖搜索栏定位。
我在 position:relative 上遇到了同样的问题。浪费了我一个小时的时间试图弄清楚为什么我所有的 img 链接都无法再被选中。
我喜欢对通用选择器使用相对定位。此外,我现在全局声明某些元素的浮动和溢出值,就在我的重置下方。然后,如果需要,我会在样式表中稍后为特定需求覆盖它们(例如:“div {overflow:hidden;}”)。
我在我的 WordPress 框架 中使用了其中的三个(box-sizing: border-box;、background-repeat: no-repeat; 和 position: relative;)……我遇到了一些小问题,我认为我需要重新学习如何做一些我做的事情——但总的来说,它们似乎运行良好。
当我尝试在您的页面上使用 * 选择器时,它崩溃了 Chrome!有趣,不是吗?
我也遇到过这种情况……每次都是。
非常有趣的文章。我很想使用 Paul Irish 的技巧,以及你的技巧 Chris,但我一直对使用 * 选择器犹豫不决。
我完全同意!
多么随意的建议。这些建议倡导开发人员应用旨在用作调整的通用规则。即使是 box-sizing 也永远不应该全局应用。您需要为不了解 box-sizing 的客户端提供优雅的降级。
此外,维护也受到阻碍,因为我们忘记了这些折叠下方中的通用规则。
我对鼓励其追随者偷懒的开发人员非常不满意,这正是它的本质。
*{
-webkit-font-smoothing: antialiased;
}
好主意!
我今天才发现通用选择器不适用于 :before 和 :after 伪元素。我渲染了一个 CSS 形状,并认为我可以将所有尖角都圆滑,在所有内容就位之后。并非如此。这有效,但是……
*, *:before, *:after { border-radius: 2px; }
由于这些元素显然不在通用领域,它们是否存在于自己的伪宇宙中?
宾果——灯泡!如果我刚才说的是真的
至少在制作复杂形状时。这应该可以节省我的大量时间并整理好事情。谢谢……某人!也许是 Paul?
您可以只使用
此外,*::selection{} 非常适合使整个网站具有独特的突出显示。
* 在 vertical-align 上?它是否仅对 TD 和 display table-cell 有效?
关于 box-sizing 的主题,我一直想问:Chris,您对放弃 IE7 支持以换取在更现代的浏览器中提供更可靠的体验有什么看法?
编写了一个基本的 Chrome 扩展程序,它可以对所有元素应用转换规则。在 Chrome 网上应用店 查看它
非常有帮助的文章,我需要 -webkit 的代码,这非常方便,感谢您抽出时间分享,顺便说一句!!!我恨你,你的评论表单看起来太棒了!!!
Steve Loneton
伯恩茅斯网页设计和 SEO
继续努力;)
使用全局选择器进行转换非常有趣……现在我将更新我的一些旧项目:D
我也对 box-sizing 属性使用了 * 选择器,在支持的地方似乎效果很好。
但是当我开始添加其他动态属性(如 background-sizing 和转换)时,一切都乱套了 ;-)
永远记住,即使您可能拥有在高端设备上工作的优势,但全世界还有数百万人没有双核/四核处理器、超快的图形处理器,甚至没有最新的浏览器。
我的建议是,对您分配给 * 选择器的属性数量要现实一些。对于可能每个页面的 CSS 不同的更大规模项目,请更具选择性地使用选择器分组,而不是通配符。
我还建议在对较小设备使用媒体查询时更加克制。总的来说,许多在台式机上看起来很棒的效果由于屏幕尺寸限制,在较小的设备上根本无法看到。
跑题了,但还有其他人看到此线程的回复以随机的顺序显示吗?
我一开始没觉得,但我看到您下面 snillor 的回复比您的早 5 天……奇怪。
我最近也开始使用转换。非常不错和简单的方法来添加一点风格。
当我不支持旧版本的 ie 时,我使用 * 隐藏整个页面,然后显示一条消息告诉他们升级。
我根据这篇文章在通用选择器上使用了 position: relative;——但今天早些时候我删除了它——它带来的麻烦超过了它的价值。
box-sizing: border-box; 运行良好(除了与 colorbox 发生轻微冲突,但对 colorbox css 进行了一些小的编辑修复了这个问题),并且 background-repeat: no-repeat; 也似乎运行良好。
我如何在 Chrome 中添加新的 CSS 规则?每次我点击“+”并输入任何规则(IE“*”)以开始时,浏览器窗口都会崩溃:它变为蓝色并提示发生了某些错误……;我无法从此处进行任何实验……!
谢谢
大家好,如何在 Chrome 检查器中插入新的 CSS 规则?每次我尝试添加并命名它(“+”按钮)时,Chrome 都会崩溃:屏幕变蓝,并显示某些错误已发生,就像它试图使用我的新规则刷新页面一样……;(
谢谢
我以后将在所有 css 表单中使用这个技巧,我没有注意到任何延迟;我喜欢在调整几个像素时不会立即崩溃的东西。
我得想想还有哪些元素几乎和 * 一样宽,我想到了 a 和 div。我采用了过渡的想法并将其应用于 a 元素,以在浏览器中提供触摸感,我对此非常满意。
*{ cursor: default; }
input, textarea{ cursor: auto; }
a{ cursor: pointer; } /* 等 */
有趣的文章,我一定会自己尝试其中的一些。请帮我一个忙,访问我的网站,我自己也有一些有趣的文章。
*
{
-webkit-transform: rotate(-11deg);
-moz-transform: rotate(-11deg);
}
可以将网站变成抽象艺术。
此外,添加悬停使其具有交互性……
*:hover
{
-webkit-transform: rotate(-11deg);
-moz-transform: rotate(-11deg);
}
稍微修改了 smapties 的代码。我喜欢这个
专业提示:创建一个匹配所有网站的用户脚本,让它添加此 css 并将其安装在某人的电脑上 ^^,
喜欢过渡代码,一种简单的方法为页面添加一些动画。我们一直在努力让客户使用旧浏览器,并且能够为最新浏览器的用户添加所有这些额外的额外功能真的很酷!
IE6……真的吗?
很棒的信息。尤其是关于通用过渡的部分。如此微妙的效果却如此时尚(你是否感觉到“但是”即将到来?)。
但是。
显然,css3 过渡似乎会搞乱所有 jQuery 的动画函数 - 例如。用于 slideDown 菜单等 -
还有其他人遇到这个问题吗?有什么解决方法吗?
想过使用 *:hover(例如,对于某些锚点)来代替,但仍然,找出它为什么这样中断是一个好奇心问题。
Browserstack 今天正在进行锻炼。喜欢这些评论。我已经在太多东西上使用了内联块,所以我现在有一些实验要做。
在玩了一会儿之后,这似乎完全合理,实际上可以为我节省未来项目的一些时间。
无论如何,我在注意到这些东西时都会使用导航。
在任何加载事件的持续时间内
* { cursor:wait; }
*{display:none;}
很棒的技巧!不过,我建议谨慎地全局设置“vertical-align: middle”。您可能会无意中更改元素的高度并导致嵌套内联元素的对齐问题。
这是一个演示 http://jsbin.com/uReMoHi/latest
在每个元素上使用 break-word 怎么样?
{
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
我正在做一个 Liferay 项目,我在 CSS 中使用了上述语法,如何对某些类进行免除?