章节
问答
课签
笔记
评论
占位
占位

[Sass]占位符 %placeholder

Sass 中的占位符 %placeholder 功能是一个很强大,很实用的一个功能,这也是我非常喜欢的功能。他可以取代以前 CSS 中的基类造成的代码冗余的情形。因为 %placeholder 声明的代码,如果不被 @extend 调用的话,不会产生任何代码。来看一个演示:

%mt5 {
  margin-top: 5px;
}
%pt5{
  padding-top: 5px;
}

这段代码没有被 @extend 调用,他并没有产生任何代码块,只是静静的躺在你的某个 SCSS 文件中。只有通过 @extend 调用才会产生代码:

//SCSS
%mt5 {
  margin-top: 5px;
}
%pt5{
  padding-top: 5px;
}

.btn {
  @extend %mt5;
  @extend %pt5;
}

.block {
  @extend %mt5;

  span {
    @extend %pt5;
  }
}

编译出来的CSS

//CSS
.btn, .block {
  margin-top: 5px;
}

.btn, .block span {
  padding-top: 5px;
}

从编译出来的 CSS 代码可以看出,通过 @extend 调用的占位符,编译出来的代码会将相同的代码合并在一起。这也是我们希望看到的效果,也让你的代码变得更为干净。

 

任务

在编辑器第 1 行输入正确的代码来声明一个占位符 mt5

?不会了怎么办

声明占位符在符号是%

||
1
2
?mt5 {
margin-top:
      5px;
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
提交
重置代码
||

请验证,完成请求

由于请求次数过多,请先验证,完成再次请求

加群二维码

打开微信扫码自动绑定

您还未绑定服务号

绑定后可得到

  • · 粉丝专属优惠福利
  • · 大咖直播交流干货
  • · 课程更新,问题答复提醒
  • · 账号支付安全提醒

收藏课程后,能更快找到我哦~

使用 Ctrl+D 可将课程添加到书签

邀请您关注公众号
关注后,及时获悉本课程动态

举报

0/150
提交
取消
全部 精华 我要发布

最赞回答 / qq_眼镜盒_0
@mixin 编译出来后文件臃肿,代码冗余,而继承和占位符不会

已采纳回答 / 慕姐7325572
你写了两个占位符当然编译了两次呀,它是按照顺序执行的,不是找到了相应的占位符就不继续执行了

已采纳回答 / lxy5989110
%不调用不会有代码%回通过属性进行合并

最赞回答 / 幽壑潜蛟
这个是会分开的。 教程上面说的是多个类调用同一个占位样式,这多个类在一块儿,比如你再有一个.bbb{@extend %mt5;} 那生成出来的是。.btn, .bbb{margin-top: 5px;},你掉用的是两个占位样式是会分开的。

已采纳回答 / 零下的夏天
<...图片...>你的意思是这样吗,就是 btn和box有相同的属性写在一起了,那btn没有的属性,box会添加上这个属性,这不是代码增加,相反解决了代码冗余的问题,你想如果box和btn分别写了这些属性,不是代码重复了,即使是相同的类名不同的属性那读取不是还是会合到一起吗,可以看下第四章的第十三节混合宏的不足……
全部 我要发布
最热 最新
只看我的

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

账号登录 验证码登录

遇到问题
忘记密码

代码语言