# 動畫互動網頁特效入門(JS/CANVAS)第一、二章 ###### tags: `HAHOW` `Javascript` `Canvas` ## 8.HTML/CSS快速入門 - css的定位與排列 若元素定位為float,可在父元素CSS設定 overflow: hidden ,將超出的元素撐滿。 --- ## 14.HTML/CSS快速入門 - sass 迴圈與內容 ### 1. 模組化: * 顏色 * 大小 * 旋轉 --- ### 2. SASS @for迴圈 ```css= @for $i from 1 through 50 產生 1~50 變數 $i ``` 接著在div名稱後要加入順序的地方換上: ```css= @for $i from 1 through 50 .present#{$i} ``` #代表轉換大括號內的變數轉成文字後再加入div的名稱 ```css= @mixin present($size: 100px, $bodyColor: #ff5151, $ribbonColor: #fff, $rotateDeg: 0deg) width: $size height: $size position: relative background: $bodyColor box-shadow: 0 0 20px rgba(#000, 0.5) transform: rotate($rotateDeg) $colorRed: #f24 $colorWhite: #fff $colorBlue: #3364f7 $colorYellow: #ffd221 $colorPurple: #c747ff $colors: ($colorRed, $colorWhite, $colorBlue, $colorYellow, $colorPurple) // 產生隨機color的mixin @for $i from 1 through 50 // 產生變數 $i = 1~50的迴圈 $size: random(50)+50 // 隨機 1~50 後 再+50 $bodyColor: nth($colors, random(5)) // 在$color變數裡隨機取5個值(變數) $rotateDeg: random(20)-10 // 隨機 1~20 後 再-10 $ribbonColor: nth($colors, random(5)) // 在$color變數裡隨機取5個值(變數) @if ($ribbonColor == $bodyColor) // 如果 $ribbonColor變數值 = $bodyColor變數值 $ribbonColor: nth($colors, random(5)) // 我就再重選顏色 .present#{$i} // 再.present後面名稱加上 $i 迴圈1~50 +present(#{$size}px, $bodyColor, $ribbonColor, #{$rotateDeg}deg) ``` --- ## 15. CSS動畫基礎與滑鼠互動 ### 1. ```css= @mixin size($w, $h:$w) //當沒有給$h值時,$h就等於$w ``` ### 2. hover後會冒出來是因為transform不會影響到position:absolute,會將元素改成position:relative ### 3. ```css= @mixin abc 可簡寫成 =abc ``` --- ## 17. <Project 2> 在網頁寫一座美麗城市 Part1 1. ```css= =abpos($l:initial,$t:initial) position: absolute left: $l top: $t 做初始化,不做任何設定 ``` ## 18. <Project 2> 在網頁寫一座美麗城市 Part2 1. ```css= [class^="house"] position: absolute 針對class name開頭是house都套入設定 ``` ---