如何在SCSS中将多个类合并为一个类?

时间:2017-12-17 17:18:59

标签: html css twitter-bootstrap sass

在Bootstrap中,有最酷的功能,我可以指定这样的填充和边距。

<div class="py-10 mt-5">...</div>

我在每个完整页面组件上使用了那个确切的div类组合。然后它向我描述如果我必须重新调整,我将不得不更新每个这样的东西,这是很多工作和容易出错。

当然,我可以这样宣布自己的课程。

div.full-page {
  padding: 10px 0;
  margin-top: 5px;
}

但是,它的缺点是与Bootstrap设置的间距/尺寸无关。此外,我得到的印象是,如果我让Booty以Booty&#39; ish方式完成工作,响应性和适应性将自动呈现。而且我也很好奇这也许是学习新事物的机会。

我想将两个类效果( py-10 mt-5 )组合成一个新类,然后将新类强加给我的div。

是否有可能,如果是这样的话?

NB - 谷歌搜索&#34;结合&#34;和&#34;班&#34;提供了许多关于面向对象技术的链接。在这种情况下,我不确定要google什么,所以我的预研究是有限的。 (不是由于懒惰和cansomeoneelsedoitforme-ism,但由于无知的关键字和有限的幻想。)

1 个答案:

答案 0 :(得分:1)

首先我在评论中提到values for those classes go from 0-5,没有 py-10 。您可以使用引导程序文件:

https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.css

以下是参考资料: https://v4-alpha.getbootstrap.com/utilities/spacing/

找到你需要的类并复制他们的CSS样式并将它们添加到你自己命名的类中:

.py-5 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.mt-5 {
  margin-top: 3rem !important;
}

您可以通过以下名称创建课程: pymt-5

.pymt-5{
margin-top: 3rem !important;
padding-top: 3rem !important;
padding-bottom: 3rem !important;
}