自學 HTML 和 CSS,有哪些好的教材和網站教程推薦?
從平面設計想轉互聯網設計,但是必須先掌握工具,有什麼好推薦呢?
列一下CSS學習資源吧:
基礎篇
CSS 最核心的幾個概念
CSS 簡寫指南
CSS樣式基礎
CSS樣式設置
CSS布局模型
CSS文字排版
你不得不知道的CSS 字體那些事兒
CSS中的顏色值和長度值
CSS選擇器分類
30個你必須記住的CSS選擇符
CSS元素分類
淺談CSS偽類分類
進階篇
CSS 專業技巧收集
CSS小技巧
CSS代碼優化
CSS的繼承、層疊、特殊性和重要性
CSS 的使用中你可能不知道的 7 件事
Web 開發中 20 個很有用的 CSS 庫
11個學習CSS實用工具和資源
17個有趣實用的CSS 3懸停效果教程
前端筆試面試中的常用知識點總結(CSS)
10個頂級的CSS UI開源框架
實戰篇
用CSS來找出兩張圖的差異
用 CSS 3 來做個平安果吧~
如何調試CSS動畫
用CSS製作Loading載入動畫【第一期】
用CSS製作Loading載入動畫-Loading字樣【第二期】
幫助你美化網站的10+實用 CSS3 技巧
30個使用CSS實現的loading等待載入效果
慕課課程導航解析
免費課程(視頻)篇
重識CSS
CSS未來
css框架的迷思
CSS與界面動效
CSS工作流
如何用CSS進行網頁布局
CSS3圖片動態提示效果
Web Components中的CSS
CSS動畫實用技巧
HTML+CSS基礎課程
商城分類導航效果
形形色色的下拉菜單
導航條菜單的製作
實踐是最好的老師,我的學習方法很簡單。
題主可以找一些主流網站,經常留意他們的改版和變化,勤按F12看代碼。
長此以往,你會有很大的收穫。
如果一定要推薦一個網站的話,那肯定是:http://www.w3school.com.cn
首先是看書咯,推薦一本《web編程入門經典》,好幾百頁呢,看完對html和css有了一個大概全面的了解以後就看視頻教程。推薦看李炎恢的xhtml教程,可以直觀的看到網頁製作的代碼編寫過程,對於加深印象很重要。如果這些都做完了,推薦去看亞當學院的網站重構教程。看書推薦一本《精通css》,對於一些技術細節有一個很深刻的理解之後,嘗試自己寫一些頁面吧,在網上找比較有典型性的網站試著模仿做一下。真正自己寫代碼以後才知道問題還是很多的,解決網站跨瀏覽器兼容是從一開始就會伴隨網頁設計師的問題,自己多多實踐,慢慢研究,錘鍊代碼,總有一天會達到自己目標的。
FreeCodeCamp Learn to code and help nonprofits
有中文版 Learn to Code and Help Nonprofits
三大特徵: 免費 直觀 系統
為什麼我學會了CSS的每個屬性,依然做不出頁面?
因為你的學習方法不對。假設你學會了常用的4000個英文單詞,難道你就會寫英文作文了嗎?
這個問題下面大部分回答毫無用處,相當於給你一本英文字典讓你學英文寫作。
學習 CSS 的高性價比方法是什麼?是以項目為中心學習。
你需要學習:
- 如何做一個個人簡歷頁面
- 如何做一個響應式頁面
- 如何做一個輪播
- 如何做一個手機端頁面
- 如何做一個三欄布局
- 如何做一個柵欄系統
- 如何做一個……
以項目為中心,遇到一個需求,就去想辦法解決,是最快的學習方法。
但是這個對零基礎的新手有點難,因為新手還需要學習如何調試、翻 GFW、使用命令行、使用編輯器和 IDE、查閱 MDN,但這些都只是輔助,重點還是項目。
目前飢人谷直播11班的同學已經做的小 Demo 有:最簡單的響應式頁面、二級導航、時鐘、Tabs 組件、輪播組件、Modal 組件、Popover 組件……。
這周剛講到 jQuery,後面的 Demo 會越發複雜起來。
然而,我基本沒有教過 CSS 的任何一個屬性,都是學生們自學的。你如果問他們會不會 CSS,他們可能並不認為自己的 CSS 學得很好,還需要加強,但是如果你丟一個需求給他,他可以實現。
那麼我上課教的 CSS 是哪些呢?
- border 大法等 CSS 調試方法,以及如何用開發者工具發現自己的錯誤
- normal flow、盒模型、堆疊順序
- 想做更多小 Demo 應該去哪裡找 UI
- 如何使用工具生成 CSS 代碼
如果你將我的課與其他網課對比,會感覺虧了:其他老師把 CSS 屬性一個一個的講解了,你居然沒講這些!
但是實際上呢?一個屬性一個屬性地講很簡單,我照本宣科即可。但是那會扼殺你的自學能力。
為什麼我不一個屬性一個屬性地講呢?看本文第一句話:
為什麼我學會了CSS的每個屬性,依然做不出頁面?
因為學習屬性並沒有什麼卵用,也沒有難度。如何融匯貫通才是難點。
如果你沒有到飢人谷學習,可以看我的「笨辦法造輪子」裡面的 CSS 源碼,也是不錯的學習資源,簡單、易上手。
http://github.com/frankfang/wheels
說到自學編程,很多人的第一反應都是 Udacity 或者 w3school 等網站。今天 AppSo(微信公眾號 AppSo)要給大家推薦一位不太一樣的老師——SoloLearn。
與那些視頻講解為主要形式網課相比,而 SoloLearn 則採用了文字講解。這種方式的好處是:
- 更方便統覽全局,更少受其他因素(如教師的口音,如視頻質量,如其他場外因素)的影響
- 更節省時間——視頻講解有時會有『灌水』的冗餘鋪墊內容,中斷學習之後恢復的時候,也比較容易通過快速翻看之前的內容來回到當前進度。
App 的界面風格簡潔穩重,SoloLearn 目前提供了 12 門市面上主流編程語言的課程。
就拿我最近在學的 C# 語言舉例吧。整個 C# 課程根據不同的知識點,分了 9 個模塊。學完這門課所有的模塊之後,跟大多數學習平台一樣,可以拿到一個 Certificate。
每一個模塊中,又分了不同的知識點,每個知識點,用講解、示例與問題的形式穿插進行教學,雖然是英語教學但用詞都非常簡單,課程的難度也並不高,十分容易上手。
使用 SoloLearn 進行學習,並不需要自己特地搭建開發環境。
如果自己腦子裡突然有了點子想要嘗試或驗證,可以點擊示例代碼下方的「TRY IT YOURSELF」,進入 Code Playground 進行實驗與分享,在這裡還能找到其他人的作品,互相交流啟發。
學習中如果遇到了不理解的地方,AppSo(微信公眾號 AppSo)發現,可以點擊頁面左下方的「comments」來進入討論區,這裡有大量關於本知識點的用戶討論可供參考,很可能有人遇到了跟你同樣的問題,並且已經得到了其他人提供的解答。
不僅這樣,SoloLearn還提供了課程的術語列表,可以讓學習者更清晰地把握自己的基礎知識。
值得一提的是,SoloLearn 有手機端和網頁端,而且進度會自動同步。如果你想要自學開發,就試試 SoloLearn,做一個並不孤獨的獨行俠吧。
網址:https://www.sololearn.com/Courses/
註:SoloLearn 根據開發技術不同,iOS 版有專門的 app,請大家按照需求下載:http://t.cn/RXl8EXv
Android 用戶除了下載單個技術的 app,也可以下載入門級應用 SoloLearn: Learn to Code。AppSo 提醒:Android 客戶端需要 Google 服務框架。(微信公眾號 AppSo 回復「全套服務」獲取詳細指南)
SoloLearn 系列應用適用於 iOS 8.0+ 或 Android 3.0+ 的設備,大小因應用和設備而異,免費。
關注 AppSo 知乎機構號,讓你的手機好用到哭。
本文作者多洛,轉載請在微信公眾號回復「轉載」獲取授權規則。
Codecademy : Learn to codeCodecademy是一個互動式的在線編程學習網站,相比傳統的在線學習網站有更強的互動性和趣味性。在這個平台上不僅能循序漸進地通過自己編寫代碼學習HTML,CSS,JS等Web編程語言,還有Python、Ruby等完整教程和實踐性更強的Projects和API教程。每個用戶除了能作為學習者學習某個教程,還能作為教授者自己編寫教程給其他用戶學習使用。
http://www.w3school.com.cn css推薦你看 《css那些事兒》,林小志的,那本書不錯!
http://www.w3school.com.cn
HTML和CSS技巧(不知道是否需要)
1. 禁止滑鼠雙擊選中文本
&
不被雙擊選中文字的區域
&
2. 自定義li樣式
li : {
list-style: none;
}
li:before{
content: "◆";
display: block;
float: left;
font-size: 1em;
margin-right: 0.5em;
}
效果如圖:
3. IE條件注釋
載入CSS2
&
載入CSS1(可以把要重寫的寫在這裡).
&
4. 圖片base64表示法&>
編寫插件需要使用圖片資源又不適合直接引入時使用base64圖片編碼進css或js插件
在線base轉換直通車
5. 瀏覽器頁面渲染優化
&
&
&
&
&
&
&&
6. 邊框和內邊距的反向繪製
css默認邊框border和內邊距padding繪製在盒的外部,定義的高度和寬度一旦應用了其中一個屬性便會被撐大,導致不好把握盒的真實寬高。css3提供了一個新的樣式:box-sizing。默認為content-box,提供一個屬性border-box,可使邊框內邊距繪製在盒內部,盒被定義的寬高不會被改變。
box-sizing:border-box;
-moz-box-sizing:border-box; /* Firefox */
-webkit-box-sizing:border-box; /* Safari */
7. 純css繪製三角形和氣泡框
三角形利用邊框重疊效果,三個邊框為透明時,第四個邊款的位置將呈現三角形效果。
div {
width: 0px;
height: 0px;
border-width: 100px;
border-style: solid;
border-color: #00f #ff0 #f00 #0f0;
}
div {
width: 0px;
height: 0px;
border: 100px solid transparent;
border-bottom-color: #f00;
}
.border_div {
width: 200px;
height: 50px;
border: 1px solid #666;
border-radius: 20px;
position: relative;
}
.triangle {
width: 0px;
height: 0px;
border: 10px solid transparent;
border-top-color: #666;
position: absolute;
bottom: -20px;
left: 50%;
margin-left: -10px;
}
.triangle:before {
content: "";
width: 0px;
height: 0px;
border: 10px solid transparent;
border-top-color: #fff;
position: absolute;
bottom: -9px; left: 50%;
margin-left: -10px;
}
8. css單位rem
px為一個單位像素點,em為當前元素父標籤的font-size大小,rem為html標籤的font-size大小。所有單位如果統一使用rem可以方便的適配不同屏幕解析度,因為只需使用js按照規則改動html的font-size值,整個頁面都會隨之改變。當使用了
&
時,手機端的頁面px不再表示一個像素點,而是被映射為一個合適的值。同時也會影響rem的大小,因為1rem=?px,px單位值變了,rem自然也會跟著變。
9. 同級元素選擇器
:nth-child為同級元素正序選擇器,例如
//style:
div {
width: 20px;
height: 20px;
float: left;
margin: 0 10px;
}
div : nth-child(even) {
background: #0062CC;
}
div : nth-child(odd) {
background: #24E150;
}
//html
&&