Tony Yang t510599
@吳宗翰
更多說明:link
更多說明:link
工欲善其事,必先利其器
自學啦
對就像 @吳宗翰 說的(X
google: XXXXX site:stackoverflow.com
HTML (HyperText Markup Language,超文本標記語言),一種標記式語言(markup language),以標籤的形式編寫,告訴瀏覽器該如何編排網頁的元素,以呈現整個網頁。
記住,不是程式語言!!!
CSS(階層樣式表,Cascading Style Sheets),用於設計並美化整個網頁,比如說字體、顏色、大小等。
除此之外,CSS也可用於製作動畫,也可透過CSS將元素順序整個改變。
JavaScript,一種高階程式語言,透過直譯器來執行的物件導向、動態型別的語言。
廣泛用於各種網頁之中,許多與使用者互動或是與伺服器進行資料傳輸都是JS來負責。
也可用於伺服器端軟體開發,如 Node.js。
雖然名字都有Java,但是兩者天差地遠!
編寫並預覽你的第一個網頁!
透過各種標籤(tag)組合成元素(element),並透過各個元素的組合進而構成一個網頁。
由起始標籤(Opening tag)、內容(Content)及結束標籤(Closing tag)所組成。
沒有結束標籤的元素,也沒有內容。
常見的空元素: <br>、<img>、<link>、<meta>
你可以在一個元素裡面放入其他元素,這稱為"巢狀"。
其中最晚建立的元素,要最早被關閉。
<p>My cat is <strong>grumpy.</strong></p>
Ex:
<p>My cat is <strong>grumpy.</p></strong>
以下是錯誤的示範:
巢狀元素中,不同層的元素之間有其關係。
如右邊範例,<ul> 為其包覆元素的父元素,包含 <p> 及 <li>。
而 <li>、<p> 則是 <ul> 的子元素。
其中同一層的元素互為鄰居。
<ul>
<li>1</li>
<li>2</li>
<li>
<p>text</p>
<p>some message</p>
</li>
<li>item</li>
<li>item</li>
</ul>
寫在標籤之中,用於對元素增加一些額外資訊。
整個屬性由數個項目組成:
屬性值需用雙引號 " 包起來,並透過等號 = 來分隔名稱與值。
id在整個網頁中應該是獨一無二的!
用空格區分各個class名稱
<p class="text">My class is "text"!</p>
<p class="blue text">My classes are "blue" and "text"!</p>
最基本的網頁由下列幾個元素組成:
<head>通常在網頁的最前頭,網頁的 metadata 會寫在這裡,並不會直接顯示在使用者畫面上。
<head>
<meta charset="utf-8">
<title>Page Title</title>
<link rel="stylesheet" href="./style.css">
<style>
p {
color:red;
}
</style>
</head>
使用者會看到的東西都在這裡面。
註釋只是用來提醒開發者的,並不會對網頁造成任何影響。
<!-- 我只是段註釋 -->
<h1>我最大</h1>
<h2>我次等</h2>
<h3>我更小</h3>
<h4>又更小</h4>
<h5>再小些</h5>
<h6>我最小</h6>
Code:
效果:
段落元素,用於放文字等。
用於換行,因為在HTML中,空白和 enter 鍵都會被無視
是空元素,不用結束標籤!
強調語意(粗體)。
刪除線。
底線。
斜體。
分別是上標、下標。
直接呈現此元素中的字元。
如空白等不再被省略。
用於呈現原始碼,預設會使用電腦中的 monospace 字型。
預設無樣式,用於將一段文字中的特定部分包起來,以便套用 CSS。
用於行內的引言。
引述他人的一段話。
<p>WWF's goal is to:
<q>Build a future where people live in harmony with nature.</q>
We hope they succeed.</p>
<blockquote>
For 50 years, WWF has been protecting the future of nature.
The world's leading conservation organization, WWF works in
100 countries and is supported by 1.2 million members in the
United States and close to 5 million globally.
</blockquote>
標註來源。
連結,其中有幾個屬性:
這個連結指向的網址。
另外 使用 `#xxx` 可以使網頁直接捲動到 id 設為 xxx 的元素的位置。
<a href="#text">link</a>
<p id="text">some text here</p>
沒有排序的清單,會有一個小圓點在項目前方。
有排序的清單,會是 1. 2. 3. .... 這樣的東西在項目前方,而不是小圓點。
<ul>
<li>ITEM</li>
<li>ITEM</li>
<li>ITEM</li>
<li>ITEM</li>
<li>ITEM</li>
</ul>
<ol>
<li>ITEM</li>
<li>ITEM</li>
<li>ITEM</li>
<li>ITEM</li>
<li>ITEM</li>
</ol>
*每個項目都要在<li>裡!
是空元素,不用結束標籤!
<video src="rabbit320.mp4">
<p>Your browser doesn't support HTML5 video.</p>
</video>
<audio>
<source src="viper.mp3" type="audio/mp3">
<source src="viper.ogg" type="audio/ogg">
<p>Your browser doesn't support HTML5 audio.</p>
</audio>
用於指定影片或是音樂的來源。
一個 <video> 和 <audio> 中可以有多個 <source>,在找不到檔案或是不支援此檔案格式時會嘗試下一個。
More : Mime Types
./ : Current Folder
current/
└── path/
└── to/
└── file
../ : Parent Folder
../
├── current/
└── path/
└── to/
└── file
https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.js
許多編輯器預設都使用 utf-8 儲存檔案,但是在使用 Windows 的電腦上,預設卻是用 Big5 來讀取檔案,因此會造成亂碼。
這時候就要告知瀏覽器你使用的是 utf-8 編碼。
透過 <meta> 來指定:
<head>
<meta charset="utf-8">
</head>
這樣就能看到內容了!
Semantic Elements
什麼是語意標籤?
語意標籤在HTML 5 中新增,其用途是將網頁分成數個有意義的區塊。
不只讓別人更清楚這個段落的目的,也能讓搜尋引擎更容易分析網頁,以便提供查詢。
網頁的標題部分。
頁尾。
導航列。
網頁區塊分類。
文章。
用於網頁佈局中左右兩側。
未分類容器。
Source: link
鑲嵌其他網頁
<iframe> 可以讓開發者在目前的網頁中鑲嵌其他網頁的內容。
而透過 <iframe> 鑲嵌的網頁不會受到原來網頁的樣式干擾,是一個獨立的區塊。
More about : Link
<iframe width="766" height="431" src="https://www.youtube.com/embed/ABtxbmY0-FI"
allow="autoplay; encrypted-media" allowfullscreen></iframe>
<iframe src="https://www.facebook.com/plugins/page.php?href=
https%3A%2F%2Fwww.facebook.com%2Finfor31st
&tabs=timeline&width=340&height=500&small_header=false
&adapt_container_width=true&hide_cover=false
&show_facepile=true&appId" width="340" height="500"
style="border:none;overflow:hidden" scrolling="no"
frameborder="0" allowTransparency="true" allow="encrypted-media"></iframe>
<iframe srcdoc="<html><body><ul><li>1</li><li>2</li><li>3</li></ul></body></html>">
<p>Sorry, your browser doesn't support iframe.</p>
</iframe>
有條理的呈現資料
<table> 標籤是一個表格的主體。
其中包含了 <tr>、<td> 等基本元素。
詳細資料 : Link
Table Row。列。
Table Data。資料。
<table>
<caption>A Table</caption>
<tr>
<th scope="col">data</th>
<th scope="col">data</th>
</tr>
<tr>
<td>data</td>
<td>data</td>
</tr>
<tr>
<td>data</td>
<td>data</td>
</tr>
</table>
Table Header。欄位標題。
表格名稱。必須為 <table> 的第一個子元素。
table ,table tr, table td, table th {
border: 1px solid black;
border-collapse: collapse;
margin: 0;
padding: .4em;
}
Styled with css:
直欄橫列!
colspan : column span 欄寬
預設: 1, 超過 1000 回到預設值
rowspan : row span 行高
預設: 1, 若設為0,將會延伸至表格底部
<table>
<tr>
<th colspan="2">data</th>
</tr>
<tr>
<td rowspan="2">data</td>
<td>data</td>
</tr>
<tr>
<td>data</td>
</tr>
</table>
table ,table tr, table td {
border: 1px solid black;
border-collapse: collapse;
margin: 0;
padding: .8em;
}
Styled with css:
描敘此標題與哪種元素相關
More : MDN
<colgroup> 為 <col> 的群組容器。
而 <col> 為空元素,能夠套上 CSS 樣式,並將其套用至整個直欄,而省去重複增加樣式的困擾。
More : MDN
<colgroup>
<col span="2">
<col style="background-color:#97DB9A;">
<col style="width:42px;">
<col style="background-color:#97DB9A;">
<col style="background-color:#DCC48E;">
<col span="2" style="width:42px;">
</colgroup>
透過 <thead>、<tobdy>、<tfoot>,
來讓表格變得更加語義化、結構更清楚。
<table>
<caption>Council budgets (in £) 2018</caption>
<thead>
<tr>
<th>Items</th>
<th scope="col">Yorkshire</th>
<th scope="col">Lancashire</th>
</tr>
</thead>
<tbody>
<tr>
<th scope="row">Donuts</th>
<td>3,000</td>
<td>5,000</td>
</tr>
<tr>
<th scope="row">Stationary</th>
<td>18,000</td>
<td>17,000</td>
</tr>
</tbody>
<tfoot>
<tr>
<th scope="row">Totals</th>
<td>21,000</td>
<td>22,000</td>
</tr>
</tfoot>
</table>