大家好,我是你們的 超級貓,一個不喜歡吃魚、又不喜歡喵 的超級貓 ~
如果 CSS 是女孩子,肯定如上圖那樣吧 🤩 ~
簡介
一般人沒事的時候刷刷朋友圈、微博、電視劇、知乎,而有些人是沒事的時候刷刷 GitHub ,看看最近有哪些流行的項目。
久而久之,這差距就越來越大,因此總會有開源信息的不對稱,有哪些優秀的前端開源項目值得學習的也不知道。
初步前端與高級前端之間,最大的差距可能就是信息差造成的。
超級貓從 2016 年加入 GitHub,到現在的 2020 年,快整整 5 個年頭了。
從 2018 年開始,我就養成了每天逛 GitHub 的習慣,一般在早上上班前或者中午午休的時候都會逛一下。
看看每天都開源了哪些好的前端項目,還有用到的主流前端技術棧又是哪些,值得我去學習的。
因此也收藏了不少好的開源項目,在此推薦給大家,每周會有一到三篇精華文章推送。
希望你在瀏覽、學習了超級貓推薦的這些開源項目的過程中,你能學習到更多編程知識、提高編程技巧、找到編程的樂趣。
前端GitHub,專注於挖掘 GitHub 上優秀的前端開源項目,抹平你的前端信息不對稱,涵蓋 JavaScript、Vue、React、Node、小程序、Flutter、Deno、HTML、CSS、數據結構與算法 等等。
平時如何發現好的開源項目,可以看看這篇文章:GitHub 上能挖礦的神仙技巧 - 如何發現優秀開源項目
以下為【前端GitHub】的第 7 期精華內容。
今天給大家帶來的是 GitHub 上超火的 10 個 CSS 項目,希望你在這里面找到寫 CSS 的靈感!
喵~ 喵~ 喵~ 正文開始了,上車坐穩扶好了~
You-need-to-know-css
該項目是 CSS 的各種效果實現,尤其是動畫效果。
筆者把自己的收獲和工作中常用的一些 CSS 小樣式總結成這份文檔。
目前文檔一共包含 43 個 CSS 的小樣式(持續更新…),所以還是很不錯的學習 CSS 的項目來的。
比如: 打字效果
<style>
main {
width: 100%; height: 229px;
display: flex;
justify-content: center;
align-items: center;
}
span {
display: inline-block;
width: 21ch;
font: bold 200% Consolas, Monaco, monospace; /*等寬字體*/
overflow: hidden;
white-space: nowrap;
font-weight: 500;
border-right: 1px solid transparent;
animation: typing 10s steps(21), caret .5s steps(1) infinite;
}
@keyframes typing{
from {
width: 0;
}
}
@keyframes caret{
50% { border-right-color: currentColor}
}
</style>
<template>
<main class="main">
<span>前端GitHub</span>
</main>
</template>
<script>
</script>
CSS-Inspiration
這里可以讓你尋找到使用或者是學習 CSS 的靈感,以分類的形式,展示不同 CSS 屬性或者不同的課題使用 CSS 來解決的各種方法。
包含了:布局(Layout)、陰影(box-shadow、drop-shadow)、偽類/偽元素、濾鏡(fliter)、邊框(border)、背景/漸變(linear-gradient/radial-gradient/conic-gradient)、混合模式(mix-blend-mode/background-blend-mode)、3D、動畫/過渡(transition/animation)、clip-path、文本類、綜合、CSS-Doodle、SVG 等內容。
css_tricks
該項目總結了一些常用的 CSS 樣式,記錄一些 CSS 的新屬性和一點奇技淫巧。
比如 提示氣泡的效果
<div class="poptip btn" aria-controls="彈出氣泡">poptip</div>
$poptipBg: #30363d;
$color: #fff;
$triangle: 8px;
$distance: -12px;
.poptip {
position: relative;
z-index: 101;
&::before,
&::after {
visibility: hidden;
opacity: 0;
transform: translate3d(0, 0, 0);
transition: all 0.3s ease 0.2s;
box-sizing: border-box;
}
&::before {
content: "";
position: absolute;
width: 0;
height: 0;
border-style: solid;
border-width: $triangle $triangle 0 $triangle;
border-color: $poptipBg transparent transparent transparent;
left: calc(50% - #{$triangle});
top: 0px;
transform: translateX(0%) translateY($distance);
}
&::after {
font-size: 14px;
color: $color;
content: attr(aria-controls);
position: absolute;
padding: 6px 12px;
white-space: nowrap;
z-index: -1;
left: 50%;
bottom: 100%;
transform: translateX(-50%) translateY($distance);
background: $poptipBg;
line-height: 1;
border-radius: 2px;
}
&:hover::before,
&:hover::after {
visibility: visible;
opacity: 1;
}
}
.btn {
min-width: 100px;
line-height: 1.5;
padding: 5px 10px;
color: #fff;
background: #00adb5;
border-radius: 4px;
text-align: center;
cursor: pointer;
}
效果:
animista
該項目里面有各種 CSS 實現的效果,還有代碼演示,方便直接復制代碼,還可以復制壓縮后的代碼,如果你在找某個 CSS 的效果的話,可以到這里找找看。
spinkit
匯集了實現各種加載效果的 CSS 代碼片段。
SpinKit 僅使用(transform
和 opacity
)CSS 動畫來創建平滑且易於自定義的動畫。
You-Dont-Need-JavaScrip
十天精通 CSS3
這是前端大佬大漠出的一個免費的 CSS3 教程,對於有一定 CSS2 經驗的伙伴,能讓您系統的學習 CSS3,快速的理解掌握並應用於工作之中。
里面的內容有講解,還有代碼演習,學完之后,可以練習所學的 api ,真的很不錯。
超級貓入門前端時,也學習過里面的內容呢,雖然現在忘記的差不多了 😂,但是學過!。
Animate
是一個有趣的,跨瀏覽器的 css3 動畫庫,內置了很多典型的 css3 動畫,兼容性好使用方便。
animate.css 的使用非常簡單,因為它是把不同的動畫綁定到了不同的類里,所以想要使用哪種動畫,只需要把通用類 animated 和相應的類添加到元素上就行了。
做為一個前端開發,如果不知道這個庫就真的很失敗了。
sass
Sass 是一種 CSS 的預編譯語言,Sass 為 CSS 賦予了更強大的功能。
它提供了 變量(variables)、嵌套(nested rules) [混合(mixins)、函數(functions)等功能,並且完全兼容 CSS 語法。
Sass 能夠幫助復雜的樣式表更有條理, 並且易於在項目內部或跨項目共享設計。
less
Less 是一門 CSS 預處理語言,它擴展了 CSS 語言,增加了變量、Mixin、函數等特性。
Less 可以運行在 Node 或瀏覽器端。
stylus
富有表現力、動態、健壯的 CSS。
它提供了一種高效,動態和表達方式來生成 CSS。同時支持縮進語法和常規 CSS 樣式。
CSS 預處理器技術已經非常的成熟了,而且也涌現出了越來越多的 CSS 的預處理器框架。
對於 sass 、less 和 stylus,都是在現在的 vue 和 react 項目中經常用到的,用法也很簡單,只要學會一種,其他兩種都很容易上手,項目中用哪一種就要看自己的喜歡了。
最后
最近加班有點嚴重,所有文章更新慢了很多,同是打工貓,生活不易啊!
好了啦,【前端GitHub】的第 7 期內容已經講完了啦。
更多精彩內容請關注下方倉庫:
平時如何發現好的開源項目,可以看看這兩篇文章:GitHub 上能挖礦的神仙技巧 - 如何發現優秀開源項目 和 恕我直言,你可能連 GitHub 搜索都不會用 - 如何精准搜索的神仙技巧。
可以加超級貓的 wx:CB834301747 ,一起閑聊 前端GitHub。
覺得有用 ?喜歡就收藏,順便點個贊吧,你的支持是我最大的鼓勵!
往期精文
你最想對超級貓說點啥?