# html/css 靜態網頁設計 ## html 介紹 html全名叫超文本標記語言,他是一種標記式語言**而不是一種程式語言**,其中超文本的概念是他能夠連結到其他網頁,而標記式語言則是他使用**標記**來顯示文字、圖片等內容 :::info 檔案的副檔名為.html ::: ## css 介紹 css是用來裝飾html所呈現的網站,透過CSS,我們可以設定頁面的佈局,調整元素的外觀和樣式,以及定義適用於整個網站的全域樣式。 CSS的應用方式多種多樣。我們可以直接將樣式添加到單個頁面元素上,這種方式適用於需要針對特定元素進行樣式調整的情況。另外,我們也可以將樣式集中化地嵌入到網頁的頭部部分,或者通過鏈接或導入方式引入外部樣式表文件。 :::info 檔案的副檔名為.css ::: ## HTML元素 首先,先利用html 輸出一行hello world ```html <p>Hello World!</p> ``` 一個html標籤包含起始標籤、結束標籤、內容 1. 起始標籤:```<p>```利用一對<>大小括號來聲明所指定的元素從這裡開始 2. 結束標籤:```</p>```利用一對</>大小括號夾著一個斜線來聲明所指定的元素從這裡結束 3. 內容:```Hello World!```由起始標籤和結束標籤所包含的部分就是內容 4. 標籤內還可以有屬性```<img src="圖片來源" alt="文字" />```。屬性透過空格分隔 5. 內容也可以是一個標籤```<p><strong>大寫</strong></p>``` 6. 有些元素沒有內容可以直接在起始標籤內關閉```<br/>``` ## 巢狀結構 ```html <p><strong>大寫</strong></p> ``` 這就是一個巢狀結構的範例,父元素```<p>```子元素包裹著```<strong>```,而父元素能夠引響子元素 ## html 基本程式碼架構 ```htmlmixed! <!DOCTYPE html> <html lang="zh-Hant-TW"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <h1>Hello World!</h1> </body> </html> ``` 1. ```<!DOCTYPE html>``` — 他是在告訴瀏覽器檔案的類型 2. ```<html>``` 元素:他是html的根元素,內部包含了所有html標籤。```lang="zh-Hant-TW"```則是他所包含的屬性用來宣告這個網頁是用html寫的 3. ```<head>``` 元素:裡面放的是不會顯示於網頁瀏覽者眼前的網頁設定。 4. ```<body>``` 元素:會包括所有要展示的html標籤 5. ```<meta charset="utf-8">``` 宣告文件使用 utf-8 這種字元編碼, 6. ```<title></title>```設置網頁標題。 7. ```<h1>Hello World!</h1>``` 網站上所要展示的文字 ## 註釋 ```<!--註釋-->``` --- ~~沒錯,你已經學完了所有的html知識,你現在只要想要用到什麼功能,打開google搜索一下你就會寫html了~~ --- ## 常用標籤 ### 標題 ```html <h1>, <h2>, <h3>, <h4>, <h5>, <h6> ``` <h1>Hello World!</h1> ### 超連結 ```html <a href="網址">超連結文字</a> ``` <a href="https://tcirc.tw/index.html">超連結文字</a> ### 圖片 ```html <img src="圖片地址" alt="沒有辦法顯示圖片的替代文字"> ``` <img src="https://tcirc.tw/images/banner1.png" alt="沒有辦法顯示圖片的替代文字"> <img src="圖片地址" alt="沒有辦法顯示圖片的替代文字"> ### 影片 ```<video src="影片地址"</video>``` ### 無序清單 ```html <ul> <li>one</li> <li>two</li> </ul> ``` 效果: <ul> <li>one</li> <li>two</li> </ul> ### 有序清單 ```html <ol> <li>one</li> <li>two</li> </ol> ``` 效果: <ol> <li>one</li> <li>two</li> </ol> ### 表格 ```<tr>```橫列 ```<td>```直行 ```<th>```標題 ```html <table> <tr> <th>1</th> <th>2</th> <th>3</th> <th>4</th> </tr> <tr> <td>a</td> <td>b</td> <td>c</td> <td>d</td> </tr> <tr> <td>e</td> <td>f</td> <td>g</td> <td>h</td> </tr> </table> ``` <table> <tr> <th>1</th> <th>2</th> <th>3</th> <th>4</th> </tr> <tr> <td>a</td> <td>b</td> <td>c</td> <td>d</td> </tr> <tr> <td>e</td> <td>f</td> <td>g</td> <td>h</td> </tr> </table> ### 段落 ```<p>``` ### 行內容器 ```<span>``` ### 區塊容器 ```<div>``` ### 換行 ```<br/>``` ### 文字樣式 ```html <strong> - 加粗標籤,表示強調文本 <em> - 強調標籤,表示斜體文本 <b> - 粗體標籤 <i> - 斜體標籤 <u> - 底線標籤 <sub> - 下標標籤 <sup> - 上標標籤 <del> - 刪除線標籤,表示刪除的文本 <ins> - 插入線標籤,表示插入的文本 <mark> - 標記標籤,用於突出顯示文本 <small> - 小字體標籤 <code> - 程式碼內容元素 ``` <strong> - 加粗標籤,表示強調文本</strong> <em> - 強調標籤,表示斜體文本</em> <b> - 粗體標籤</b> <i> - 斜體標籤</i> <u> - 底線標籤</u> <sub> - 下標標籤</sub> <sup> - 上標標籤</sup> <del> - 刪除線標籤,表示刪除的文本</del> <ins> - 插入線標籤,表示插入的文本</ins> <mark> - 標記標籤,用於突出顯示文本</mark> <small> - 小字體標籤</small> <code> - 程式碼內容元素</code> ### 表單 ```<form>``` ### 語意結構元素 ```html <header> - 頁眉標籤,通常用於介紹內容的開頭或者導航部分 <footer> - 頁腳標籤,通常包含內容的版權信息、聯絡方式等 <nav> - 導航標籤,用於定義導航連結的部分 <article> - 文章標籤,用於包裹獨立的、完整的、可獨立分配的內容 <section> - 區域標籤,用於將文檔分成獨立的部分,通常具有相關性 <aside> - 側欄標籤,用於包含與主內容無直接關聯但可提供輔助信息的內容 <main> - 主要內容標籤,用於標記文檔的主要內容部分 <figure> - 圖片與說明標籤,通常用於包裹圖片及其相關的說明內容 ``` :::info :information_source: 他們的效果都是一樣的只差在搜尋引擎在閱讀你的網頁時,能否看懂你的網頁內容 ::: ## 選擇器 ### 元素樣式 ```html p { color: white; } ``` ### class ```htmlmixed .class1 { color: black; } .class2 { color: black; } ``` ### id ```htmlmixed #identity { color: gray; } ``` :::warning :warning: 只能套用在一個元素上 ::: 使用: ```html <p id="identity" class="class1 class2"> ``` :::warning :warning: id的優先級大於class大於元素樣式 後面的class優先級大於前面的class ::: ## 延伸學習 ### SEO 搜索引擎優化,是一系列的策略和技術,旨在提高網站在搜索引擎結果頁面上的排名。這包括優化網站內容、改進網站結構、建立高質量的鏈接等。 ### javascript 一種高級的、解釋性的程式設計語言,常用於網頁開發中。它可以使網頁動態化,實現諸如交互式地圖、動畫效果、表單驗證等功能。 ### 後端開發 與前端開發相對應,後端開發涉及建立和維護網站的伺服器端邏輯、數據庫管理和應用程式接口等工作。 ### node.js 一個基於Chrome V8引擎的JavaScript運行時,用於構建快速和可擴展的網絡應用。Node.js允許開發者使用JavaScript在伺服器端編寫應用程式。 ### rwd 響應式網頁設計,是一種設計方法,使網站能夠適應不同設備和螢幕尺寸,提供最佳的瀏覽體驗。通過使用彈性佈局、彈性圖片和媒體查詢等技術來實現。 ### 前端框架 前端框架是一套預先撰寫好的程式碼,提供了一個結構和工具,幫助開發人員更迅速地建立交互式的網頁應用。它們通常包含了UI元件、路由管理、狀態管理等功能。 #### Vue Vue.js是一個流行的前端JavaScript框架,用於建立使用者介面和單頁應用。它的核心是一個易於理解和學習的視圖模型,以及一個靈活的生態系統,使得開發者可以快速構建動態的、高效的網頁應用。 #### React React是由Facebook開發的JavaScript函式庫,用於構建用戶界面。它以組件化的方式工作,允許開發者將用戶界面拆分為獨立的可重用組件,並通過虛擬DOM實現高效的更新。 ### Sass/SCSS ## 推薦學習資源 https://developer.mozilla.org/zh-TW/ https://www.w3schools.com/ :::info :information_source: 網站設計可以說是網路上免費資源最多的程式類別 可以多加善用,並培養翻閱文檔的習慣 :::