深入探討 Inline、Block 與 Inline-block
HTML 的 Element 共分成 Inline、Block 與 Inline-block 三種類型,其中 Inline-block 具有部分 Inline 特性,也具備部分 Block 特性,因此稱為 Inline-block。
HTML 的 Element 共分成 Inline、Block 與 Inline-block 三種類型,其中 Inline-block 具有部分 Inline 特性,也具備部分 Block 特性,因此稱為 Inline-block。
文繞圖為實務上常見需求,若只使用 <img> 與 <div>,則 <img> 與 <div> 會各自一行顯示,可使用 CSS 對 <img>設定 float 達成文繞圖。
當 Vertical Margin 同時作用在相同空間時,CSS 會有所謂的 Margin Collapse,也就是 Vartical Margin 會不如我們預期,而有合併現象。
如 Youtube 本質上就是 <iframe>,但若要能讓 Youtube 也 RWD,則必須搭配一些 CSS 技巧。
雖然能使用 JavaScript 動態由 Canvas 繪製圖片,但若要能讓 Canvas 也 RWD,則必須搭配一些 CSS 技巧。
若我們希望 <div> 能根據 Browser 的長寬自動改變,直覺會想將 width 與 height 都設定成百分比,但事實上沒這麼單純。
ECMAScript 之基本型別有 String、Number、Boolean、Object、Array 與 Function,可由其 Prototype Chain 更了解這些型別特性。
除了一般語言都有的 Global Scope 與 Local Scope 外, ECMAScript 還有一個很特殊的 Lexical Scope,這導致了 Closure 與日後 Functional Programming 發展。
不只 OOP 有 Design Pattern,事實上 FP 也有不少 Pattern,而 Currying 算 FP 最基礎、使用最多的 Pattern。ECMAScript 雖然沒有直接支援,但因為有 First-class Function 、Lexical Scope,使得 Currying 在 ECMAScript 中使用成為可能。
ECMAScript 2015 支援 Class 之後,很多人認為總算達到 OOP 該有高度,事實上 ECMAScript 仍有其他方式亦可完成所有 Class 能做事情。