不管是学习 CSS 或是 Sass,在认识完基本的使用方式之後,都会透过作品的实作练习,才会更加熟悉运作,前面几天可以看到从小区块的 CSS 练习,到一整页的网页练习。同样在 Sass 也到 Udemy 找个实作网页来练习。
这次的课程专案也相对复杂,在设定变数、mixin、function等等,用比较多进阶的方式,如果没有上过课程一开始真的也不会想到可以这样设定,或是简化。在此专案,除了学会 Sass 的基本语法以及档案命名与配置之外,在基本的版面排版方式,主要使用 grid,藉此也还能在练习下 grid 的撰写方式。
udemy课程: SASS - The Complete SASS Course (CSS Preprocessor)
会建立的不同分档,个别负责不同的区块,并透过@import放入主要的sass档
<nav class="first-nav">
<ul class="first-nav-list">
<li class="first-nav-item">
<a href="#" class="first-nav-link">
<i class="fa fa-search"></i>
search
</a>
</li>
<li class="first-nav-item">
<a href="#" class="first-nav-link">
Contact Us
</a>
</li>
</ul>
</nav>
.first-nav{
&-list{
height: 100%;
}
&-item{
list-style: none;
}
&-link{
color: color(primary);
}
}
@each
,制作轮播效果透过@each
,可以将原本重复撰写的语法,化繁为简,带入设定好的项目、时间,透过回圈方式编译完成。
:nth-child()
选择第几张图片/*设置延迟时间,让每张slide呈现4秒替换*/
.slideshow-slide:nth-child(1){
animation-delay: 0s;
}
.slideshow-slide:nth-child(2){
animation-delay: 4s;
}
.slideshow-slide:nth-child(3){
animation-delay: 8s;
}
.slideshow-slide:nth-child(4){
animation-delay: 12s;
}
.slideshow-slide:nth-child(5){
animation-delay: 16s;
}
@each
的写法
$animlist
,在each回圈时要传进去的项目.slideshow-slide:nth-child
放入slide of number(取得列表中第一个值),後面接着写下要执行的动作animation-delay: nth($item,2);
///改写为=>$animlist:第几个 延迟秒数,
//#{nth($item,1)}: 带入变数,1表示(2 4s),第一个值=2
$animList:1 0s,2 4s,3 8s,4 12s, 5 16s;
@each $item in $animList {
.slideshow-slide:nth-child(#{nth($item,1)}){
animation-delay: nth($item,2);
}
}
参考资料:
Sass - @each
Sass Tutorials #9 - Nth Function In Lists
此课程比较完整细节可以到我的 部落格 看看喔~
>>: 【Day12】建立React专案并安装Jest,来跑跑看第一个测试吧 -`д´-!
环境安装 在使用Python开发AI时,由於需时时查看处理中的训练资料,於是大多使用Jupyter ...
照片铅笔素描效果 教学原文参考:照片铅笔素描效果 这篇文章会介绍使用 GIMP 图层的混合模式,搭配...
俗话说人要衣装,佛要金装,我们的 vim 也得要有漂亮的外观。今天就让我们来看看如何调教调整 vim...
前情提要 Firebase 是 Google 推出的云端後端服务平台,提供了行动端 (Android...
LightGBM 今日学习目标 LightGBM 与 XGBoost 比较 了解 LightGBM ...