--- tags: 網頁切版直播班 - 2021 夏季班 --- # 學生 pixel perfect kata * [Gui Ting Liu](https://youtu.be/6dyXWsuyNsQ) * [YuriT](https://www.youtube.com/watch?v=dXjNR8zyUpw) * [肉鬆](https://www.youtube.com/watch?v=oq-_3_jdoOE) * [Vic](https://youtu.be/xVldvQuSQnI ) * [Yao Lin](https://www.youtube.com/watch?v=uFwGIGXtx4k) * [Kent](https://www.youtube.com/watch?v=Ov9v2uDN-78) * [Harold](https://www.youtube.com/watch?v=XFgbsW7cj_Q) ## 大家常錯的地方 1. footer 寫死高度。 2. 相同區塊沒有使用 ul li 管理。 3. 網頁只有一個 h1 標籤。 4. 類別 父子層 命名的問題。 [參考文獻-校長的css命名/階層優化教學文](https://ithelp.ithome.com.tw/articles/10237687) ## [YuriT](https://www.youtube.com/watch?v=dXjNR8zyUpw) 1. 結構部分有誤,,左邊區塊,應該是兩則消息,一則消息是 li> 裡面有 img H2+p。 ## [肉鬆](https://www.youtube.com/watch?v=oq-_3_jdoOE) 1. 表尾可嘗試 align-item:center; 讓他置中 2. p{font-size:16px} 你忘記寫了 ## [Vic](https://youtu.be/xVldvQuSQnI ) 1. 提醒下你有寫 html 標籤選擇器,若是中大網站,要注意各個 頁面標籤樣式是否樣式一樣,否則覆蓋上會有點麻煩。 ## [Yao Lin](https://www.youtube.com/watch?v=uFwGIGXtx4k) 1. aside 不能在 .news 裡面。 ## [Jeff H](https://www.youtube.com/watch?v=fXOIHC5ZPWw) 1. .news-fraction 會是 ul li 2. 新聞裡面的標題跟段落是 h2+p 不會是 ul li 3. .footer 在課堂上有提及不要寫死高度。 ## [Dida](https://www.youtube.com/watch?v=SSqDfLqDjFw) 1. products 可以不用下 display flex,因為 ul li 本身就是區塊元素,會從上到下排列,有時可善用元素本身特性,這樣就可減少樣式複雜度。 ## [周周](https://www.youtube.com/watch?v=_uwBpg504Aw&feature=youtu.be) 1. 一個網頁只會有一個 h1,可用 h2 標籤。 2. 圖片、標題、段落請讓他們在同個 li 群組內,不要拆開他們。 ## [小將](https://www.youtube.com/watch?v=wrntWCp1aAA) 1. .list 那裡請用 ul li 結構。 2. title 標題請用 h2 ## [J](https://www.youtube.com/watch?v=vjCal67lG_k) 1. .Kate 可以移除。 2. b 標籤請換成 h2。 3. .news 請換成 ul li 結構。 4. foot 請不要寫死高度,用 padding 產生留白。 5. 寫 scss 時,不要讓 class 階層太長,盡量在四五層內,像是 .news 不用放在 .wrap 階層內,可以拉出來讓他獨立。 ## [irene](https://www.youtube.com/watch?v=AELUIjj-fJo) 1. .photo 沒用到可移除。 2. 若是 article 是 .news 底下子區塊,建議命名為 .news-article,單純寫 .article 很難看出他跟 .news 的依賴關係 。 3. .footer 嘗試移除高度,用 padding 產生留白。 ## [Jim Hwang](https://www.youtube.com/watch?v=38GeZ7wDTa8) 1. 左側是 消息列表,可嘗試 class 命名優化,例如 .news。 2. 左側 列表請嘗試一個 ul 包兩個消息。 3. 這個 kata 不會用到 column,善用區塊元素特性從上到下排列。 ## [Moose](https://www.youtube.com/watch?v=O4y0EDqePCQ) 1. 一個小建議設置,你在 html 標籤選擇器設定了 li 樣式,這裡建議改成 .news li,確保該設定在特定範圍內,往後網頁擴充才不會影響到其他的 li 樣式。 ## [Joseph Tang](https://www.youtube.com/watch?v=ZtdTU6qcBUY) 1. 若是刻意練習Bem的話提醒一點。 你寫的 .list 元件,__ 區塊正確,但 p 卻沒有 class 這有兩種可能性, 一種是 p 是全域設定,在其他處都一樣, 另一種是他其實也是 list 元件裡面的依賴樣式, 因為你在 body 下了全域行距設定,所以我覺得你是做前者。 ## [Riley](https://www.youtube.com/watch?v=Low8ZbF4_KU&feature=youtu.be) 兩個建議 1. .content 如果樣式跟 .news 有關聯,可以叫做 .news-content 可讀性性會較好。 2. .footer 在 kata 文字只有一行,你加上三行,但有扣掉上下 padding ,加起來也剛好 120 這樣也 ok 勒~。 ## [Sylvia-H](https://www.youtube.com/watch?v=pwHFZEajZsc) 1. Bem寫法, 若是區塊應要叫做 「news __item __ text」, 而裡面的 h2,應要叫做 news __ item __ text __tile, 可以考慮 h2 p 是否為全站共同樣式, 讓你刻意設計成 bem 的元件可以更簡潔。 ## [鉦勝](https://www.youtube.com/watch?v=tmQKHec1JMs) 1. .card 請用 ul li 結構。 2. h2 p 外面可以不用包 div,讓結構更簡潔。 3. asild 應該是叫做 aside? 4. .content 跟 main 可以移除掉其中一層試試看,並善用區塊元素另起一行特性從上到下自動排列 ## [軒仔](https://www.youtube.com/watch?v=bPWbXAH-EUU&t=22s) 1. .footer 嘗試不要寫死高度,用 padding 來產生留白試試看。 2. 右邊的大圖應該是高度 216,但他因為你用了 flex 關係,圖片高度被拉成 240 高度有些變形,可以看看如何調整。 ## [Gill](https://www.youtube.com/watch?v=mslc28YRdM0) 1. 像是 .new li 那裡你可以不用在 .wrap 階層,可以拉出來,這樣編譯出來的階層會比較短,像這樣你編譯出來會變成.wrap .main .new li .new-content h2,但其實寫 .news-content h2 也有一樣的效果,除非他們有依賴性才需要繼承階層,但 main wrap 都是排版階層,跟元件 .news 部分可以拆離。 ## [沈依蓉](https://www.youtube.com/watch?v=s54tZWujsho&feature=youtu.be) 1. 一個小建議是 可以用 .card 推擠 margin right,而不是用 .card li,因為用子層來讓外層跟外層推出距離不合理。 ## [anna](https://www.youtube.com/watch?v=3d6Nx3S-OhE) 1. 在 class 命名上,如果你 .news 裡面的 list 跟 item ,是 .news 底下的依賴子模組,建議叫做 .news-list .news-item 會比較好,但這裡你應該是訓練前者,可以再調整命名看看勒。 ## [黃小瑄](https://www.youtube.com/watch?v=YuWJgusy4vo) 1. 有個小細節是 img 沒有結尾標籤哦,HTML面板 23 行可以移除勒~ ## [Alicia Lo](https://www.youtube.com/watch?v=UNsmLPI5WLY) 1. .new 與 .newContent 你各有寫寬度,請思考移除其中一處試試看,這裡不需要寫那麼多寬度,這會有助於你寫RWD 時,結構可以更簡潔。 2. newsBox 這名稱可以再好一些,例如叫做 .news-item ## [Tansy](https://www.youtube.com/watch?v=BoKmvG5E_-o&feature=youtu.be) 1. 你有寫像是 li h2、ul li 這樣的標籤選擇器,建議不要這樣,原因是一個中大型網站,有可能各個頁面的 li h2 都不一樣,如果你寫全域的 html 標籤,這樣在樣式覆蓋上會變得困難,建議還是用類別選擇器來指定範圍樣式,例如 .news-title ## [ZY Hsu](https://www.youtube.com/watch?v=ZSEEfRqjQ-Q) 1. 一個小建議是 .content 那裡不用放在 .wrap .main 底下的巢狀,這樣會導致階層過多。 這樣 scss 編譯出來,就只會是 .content-news .content-txt ...而不會是 .wrap .main .content-news .content-txt h2 這麼多階層。 ## [Fleur](https://www.youtube.com/watch?v=wV2N2g7307k&feature=youtu.be) 1. 一個小建議是 item 元件可以拉出來獨立,不用放在 .main 好處一是他之後放在其他區塊不會受限在 .main 好處二階層簡潔 ## [Jerry Yen](https://www.youtube.com/watch?v=n0VxBmnjvRI&feature=youtu.be) 1. 只有一個小細節是 .news .content 那裡推擠比較不合適,若是父層跟父層有距離,用 .news 設置寬度會比較直覺,否則日後在回顧版面時,還會需要思考究竟是子層哪裡的 padding 或 margin 有推擠到,維護上就會比較麻煩。 2. 我的意思是,因為 .news .ad 是同層,所以可以在 .main 加上 space between 方式左右靠齊,至於 96 圖片跟段落推擠,則裡面屬於同層,就可以裡頭元素推擠。 ## [rose](https://www.youtube.com/watch?v=Ffoqq4XwQVs&feature=youtu.be) 1. emmet 練習得不錯,也有用到 ul li 2. 你用 large middle small box 當作容器命名是個不錯的嘗試,會建議你嘗試語意命名,像是左邊是消息列表,那可以試試看叫做 .news 裡面標題叫做 .news-title 試試看。 3. ul 裡面的第一層只能是 li,所以右邊的 ad 廣告必須包 li。 4. 不過右邊的廣告數量並沒有多個廣告,所以也不需要下 ul 標籤。 ## [黃羽均](https://www.youtube.com/watch?v=Zmu3AsJYGzw&feature=youtu.be) 1. wrap 不用下 display:flex,因為她底下只有一個 container,不需要做併排。 2. .container 是容器,所以讓他去影響消息列表不合適,也就是這樣的 class 不適合`.container ul li h2`,因為左側是消息列表,所以可以把 news 放在 ul 上,再來去寫像是 .news h2、.news li 會比較合適。 3. img display: block,比較合適寫在指定範圍內,例如 .news img,如果是要修改下方 3px ,可以用 verticl-align:middle,因為在有些情境上圖片會需要跟其它元素併排,用 display: block 在覆蓋上就會變得比較麻煩。 4. .footer 可以加上 p 段落包住文字。 5. 可以嘗試左右來做寬度推擠。 ## [童筱涵](https://www.youtube.com/watch?v=7LYYss3RB8s) 1. .new-h2 請改為 .news-title,這樣的類別樣式,之後在套其它 HTML 標籤也不會衝突。 ## [YELLA MOON](https://www.youtube.com/watch?v=D6SyVnToxYg) 1. 可以嘗試寫成 .news h2 .news p ,讓樣式限縮在特定範圍。 2. img 沒有結尾標籤 </img> 還請移除。 3. 最後你的介面 標題跟段落掉到下面,可以看看為什麼,以及去觀察其他同學寫得結構。 4. 有時卡關時看看別人的寫法,也是種訓練,讓自己知道原來還有哪些寫法。 ## [阿瓜](https://www.youtube.com/watch?v=RqGWovEW7y0) 1. news-content 作法我課題會講解父層處理方式,到時可再了解。 2. 一般來說比較不會在 img 下全域 displayblock 建議寫在範圍內 .news-list img。 ## [yurie](https://www.youtube.com/watch?v=Rzf64OpW85A) 1. 表尾請嘗試不要寫死高度,用 padding 產生留白。 2. 可以嘗試寫成 .news-content h2 .news-content p ,讓樣式限縮在特定範圍。 3. 一般來說比較不會在 img 下全域 displayblock 建議寫在範圍內 .news-list img。 ## [Lina Chen ](https://www.youtube.com/watch?v=z79rJWQEdVg) 1. 你是設計一個 .new ,裡面有依賴的區塊是用成 new-content,這樣子的設計是可以的,表示你一個 - 代表是裡面的依賴模組。 2. 但你右邊叫做 side-bar 就會有些困惑,會想要找外面的 .side ,如果那是新的區塊,可以叫做 sideBar。 ## [Phoebe](https://www.youtube.com/watch?v=Z3bIXXtBUrQ) 1. 你有設定 .new、.item、.content,若 .item 跟上層 .news 是一組都是有關消息列表的設定,可以嘗試寫成 .new-item、.news-content。 2. footer padding 只有推上下,可以寫成 padding:48px 0 。 ## [Karen Huang](https://www.youtube.com/watch?v=nCqevlazrWY) 1. 可以試試看 .news-text 向右邊推的 margin right ,改用 .news 推擠,因 .news 與 .ad 同層,同層推擠距離,透過 .news 比較適合。 ## [Yen](https://www.youtube.com/watch?v=dNrUVMabuhg) 1. 可以試試看 .card 向右邊推的 margin right ,改用 .cards 推擠,因 .cards 與右邊廣告圖片同層,同層推擠距離,透過 .cards 比較適合。 ## [大衛 ](https://www.youtube.com/watch?v=hUkvnZ1oD2w) 1. img 設定可以寫在 .item img 上縮限範圍,如果是想解決 3px 問題,可以用 vertical-align:middle 2. 左邊是消息區塊,你也有設定 .new ,但是 .new 的相關 class css 樣式設定沒看到,建議可以寫成像是 .new .new-item h2 之類的,來瞭解他們彼此的依賴關係 3. 用 justify-content: space-between; 來做左右區隔不錯 ## [Nate Lu](https://www.youtube.com/watch?v=9bXhWj7u0Hw) 1. 你是少數 kata 有嘗試用 工具型 class 的學生,嘗試得很不錯,例如 .mb、.mx,這樣子很好,但建議給一個單位值,例如 .mb-1,一個單位是推擠 4 px,mb-6 則是 推 24 px,這樣會比較好些,像是 bootstrap 也有類似的概念單未來推擠。這後面會再多做講解,到時可以觀念可以更穩固。 2. 左邊是消息列表,可以嘗試 ul 寫 .news,標題寫 .new-title 會比較合適 ## [Scarlett 史嘉](https://www.youtube.com/watch?v=dm6azmRoHz4) 1. img.news-pic 可以寫成 .new-pic,在寫 CSS 時不傾向讓他去綁定 HTML 標籤,這樣選擇器可以不受 HTML 標籤限制,可以指定在各標籤上。 2. h2 可以改成 .news-list h2,限縮樣式範圍,因為一個中大型網站,每個標題樣式都不一樣,直接寫在 h2 會有些風險。 ## [zyc ](https://www.youtube.com/watch?v=h8AOQUbNnjI) 1. h2 建議改為 .hero h2,一個網站每個頁面 h2 樣式可能都不一樣,樣式覆蓋上可能會比較麻煩。 2. footer 既然都用 padding 推擠,那就不用 flex 推嘍。 <!-- [natsu](https://www.youtube.com/watch?v=W-HNDi4UFfQ&feature=youtu.be) --> <!-- [三隻小貓 ](https://www.youtube.com/watch?v=DrhqP54mfEk) -->