小白HTML&CSS&JavaScript學習(未完結,持續更新)
阿新 • • 發佈:2021-02-10
HTML
基本框架
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<title>無標題文件</title>
</head>
<body>
</body>
</html>
iframe內聯框架
<iframe src="https://www.bilibili.com" frameborder ="0" width="1450" height="1000"></iframe>
不常用,有缺點
基礎
1. 標題(h)
<h1>一級標題</h1> 一般一個網頁中只有一個h1標題
<h2>二級標題</h2>
拓展
<!--
hgroup標籤用來為標題分組
將一組相關的標題放入同一組中
-->
<hgroup>
<h1>你好</h1>
<h2>我是</h2 >
</hgroup>
2. 段落(p)
<p>Hello World!</p> <!-- 形成一個段落 -->
<br>Hello World!</br> <!-- 折行,但不形成段落 -->
<blockquote>獨佔一行的塊元素</blockquote> <!--引用 -->
3. 連結(a)
<a href="https://www.bilibili.com/">這是一個連結</a>
4. 影象(img)
-
img元素屬於替換元素(基於塊元素和行內元素之間,具有兩種元素的特點)
-
alt 圖片的描述,預設情況下不會顯示,當圖片載入失敗的時候會顯示
但搜尋引擎會根據alt中的內容識別圖片,如果不寫alt屬性則不會被搜尋引擎收錄
-
title屬性 可以顯示圖片或文字的屬性
<img title="多多和小小初次購物" src="../圖片/影象.jpg" alt="多多and小小" width="200" >
<!--若只設置width(height),不設定height(width)則會等比例縮放 -->
- 拓展
- jepg(jpg):支援的顏色比較豐富,不支援透明效果,不支援動圖
- gif:支援的顏色較少,支援簡單透明,支援動圖
- png:支援的顏色豐富,支援複雜透明,不支援動圖
- webp:谷歌推出的專門用來表示網頁中的圖片的一種格式,具備前三種的所有優點,記憶體小
- base64:希望圖片載入速度快的時候使用,將圖片轉換成編碼的形式,隨瀏覽器載入一起出
5. 註釋( )
<!--這是一個註釋-->
6. 水平線(hr)
<hr>
屬性
body屬性
值 | 描述 |
---|---|
class | 為html元素定義一個或多個類名(classname)(類名從樣式檔案引入) |
id | 定義元素的唯一id |
style | 規定元素的行內樣式(inline style) |
title | 描述了元素的額外資訊 (作為工具條使用) |
-
拓展
title 標籤的內容會作為瀏覽器搜尋結果的超連結上的文字
a 標籤的屬性
target 屬性
<a target="value">
值 | 描述 |
---|---|
_blank | 在新視窗中開啟被連結文件。 |
_self | 預設。在相同的框架中開啟被連結文件。 |
_parent | 在父框架集中開啟被連結文件。 |
_top | 在整個視窗中開啟被連結文件。 |
framename | 在指定的框架中開啟被連結文件。 |
type 屬性
<a type="value">
屬性 | 描述 |
---|---|
MIME type | 規定被連結文件的的 MIME 型別。 |
hreflang 屬性
- hreflang 屬性指定被連結文件的語言
<a hreflang="value">
<a href="https://www.bilibili.com" hreflang="zh">B站</a>
name 與 id 屬性
-
name(id)可傳送至錨處
<a name="top">top</a> <!--錨--> <a href="#top">去top</a> <!-- 傳送 -->
拓展
-
可在開啟新網頁的時候定位到錨處
<a href="http://127.0.0.1:5500/basic.html#foot">訪問到foot處</a>
-
head 屬性
標籤 | 描述 |
---|---|
head | 定義了文件的資訊 |
title | 定義了文件的標題 |
base | 定義了頁面連結標籤的預設連結地址 |
link | 定義了一個文件和外部資源之間的關係 |
meta | 定義了HTML文件中 |
script | 定義了客戶端的指令碼檔案 |
style | 定義了HTML文件的樣式檔案 |
<meta charset="UTF-8" name="keywords" content="HTML,學習,小小,多多">
<meta charset="UTF-8" name="description" content="HTML,學習,小小,多多">
字型(font)
1. 顏色
<font style="color: brown;">Hello World!</font>
2. 大小
<font style="font-size: 20px;">Hello World!</font>
<p style="font-size: 20px;">Hello World!</p>
3. 型別
<p style="font-family:華文彩雲;">你好世界!</p>
<font style="font-family:華文彩雲;">Hello World!</font>
文字格式化
1. 文字格式化標籤
<b>Hello World!</b> <!-- 加粗文字 -->
<em>Hello World!</em> <!-- 定義著重文字 -->
<i>Hello World!</i> <!-- 斜體 -->
<strong>Hello World!</strong> <!-- 強化語氣 -->
<blockquote>獨佔一行的塊元素</blockquote>
列表
列表之間可以互相巢狀
屬性 | 描述 |
---|---|
ul | 無序列表(用的最多) |
ol | 有序列表 |
dl | 定義列表 |
<dl>
<dt>HTML</dt> <!--dt定義名,dd定義的內容-->
<dd>HTML稱為超文字標記語言,是一種標記語言。它包括一系列標籤.
通過這些標籤可以將網路上的文件格式統一,使分散的Internet資源連線為一個邏輯整體。
HTML文字是由HTML命令組成的描述性文字,HTML命令可以說明文字,圖形、動畫、聲音、表格、連結等
</dd>
</dl>
音訊(audio)和視訊(video)
1. 音訊
- controls:允許使用者控制
- autoplay:自動播放
- loop:迴圈播放
<audio src="" controls autoplay loop></audio>
-
拓展
<!-- 可用來播放音訊失敗時提示使用者升級瀏覽器 <audio controls> 對不起,你的瀏覽器不支援播放音訊,請升級瀏覽器 <source src="./音訊/雙笙_封茗囧菌-霜雪千年.mp3"> </audio> --> <embed src="./音訊/雙笙_封茗囧菌-霜雪千年.mp3" type="audio/mp3" width="300"> <!-- embed所有瀏覽器都支援,但版本很舊-->
2. 視訊
- 方法和audio基本一致
<audio controls>
對不起,你的瀏覽器不支援播放視訊,請升級瀏覽器
<source src="./">
</audio>
<embed src="./" type="audio/mp4" width="300">
// embed所有瀏覽器都支援,但版本很舊
3. 注意示項
- 一般不會引入本地視訊
注意事項
-
如果需要書寫特殊符號,則需要用Html中的實體(轉義字元)
&實體的名字
顯示結果 實體名稱 描述   空格 < < 小於號 > > 大於號 & & 和號 " " 引號 ` &apos 撇號 ¢ ¢ 分(cent) £ £ 鎊(pound) ¥ ¥ 元(yen) € &euro 歐元(euro) § § 小節 © © 版權(copyright) ® ® 註冊商標 ™ &trade 商標 × × 乘號 ÷ ÷ 除號
CSS
基本框架
1. 內聯(行內)樣式
- 直接在HTML語句中定義
<p style="color: red; font-size: 30px;">命數入織,當為磐石</p>
- 缺點
- 樣式只能對一個標籤生效
- 對多個元素生效時,需每一個都定義一次
- 修改樣式麻煩,需一個一個修改,不方便
2. 在head中的style定義
- 在CSS選擇器中定義樣式
<style>
p{
color: red;
font-size: 30px;
}
</style>
-
優點
- 可同時為多個標籤定義樣式,修改時只需修改一處即可應用全部
-
缺點
- 但只能對當前的一個網頁有效,不能跨介面複用
3. 外部樣式表
- 定義一個.css檔案
- 然後用link語法連結
<link rel="stylesheet" href="./樣式表.css">
常用選擇器
id 與 class
- id
- 定義:根據元素的id屬性值選中一個元素
- 語法:#red{}
- 注意:最好不要重複使用,id屬於唯一值
<style>
#gray{
color: gray;
}
</style>
</head>
<body>
<h1>靜夜思</h1>
<p>床前明月光</p>
<p>疑似地上霜</p>
<p>舉頭望明月</p>
<p id="gray">低頭思故鄉</p>
- class
- 定義:與id相似,但可以重複使用
- 語法:.blue{}
- class可以為元素分組
- 一個元素可以指定多個class元素,class之間用空格間開
<style>
#gray{
color: gray;
}
.blue{
color: blue;
}
.one{
font-size: 15px;
}
</style>
</head>
<body>
<h1>靜夜思</h1>
<p class="blue one">床前明月光</p> <!--指定多個class元素-->
<p class="blue">疑似地上霜</p>
<p class="blue">舉頭望明月</p>
<p id="gray">低頭思故鄉</p>
通配選擇器
*{
<!-- 作用於整個CSS -->
}
複合(交集)選擇器
-
定義:同時複合多個條件的元素
-
語法:h1,h2{}
<style>
p.two{
font-size: 30px;
font-family: "華文彩雲";
}
</style>
</head>
<body>
<div class="two">HTML</div>
<p class="two">CSS</p>
關係選擇器
- 定義
- 語法
- div>p div.one>p div>p>span p+h4 div~span
<style>
div>span{ /*子元素選擇器 語法:父元素>子元素*/
font-size: 40px;
font-family:'宋體';
color: orange;
}
div.one>p{ /*父子選擇器結合class標籤*/
font-size: 30px;
color: chocolate;
}
div>span>p{ /*父子選擇器*/
font-size: 40px;
color: teal;
}
p + h4{
font-family: '草書'; /*兄弟選擇器 語法:前一個+後一個 (只選擇緊挨著的第一個元素)*/
color: violet;
}
div ~ span{ /*兄弟選擇器(選擇下面所有的兄弟元素)*/
font-size: 20px;
color: royalblue;
}
</style>
</head>
<body>
<div>
<span>
div內的span
<p>div>span>p</p>
</span>
</div>
<div class="one">
<p>div與class</p>
<h4>p旁邊的h4元素</h4>
</div>
<span>div外的span</span>
屬性選擇器
-
語法:[屬性名] 選擇含有指定屬性名的元素
[屬性名 = 屬性值] 鑽則含有指定屬性名和屬性值的元素
<style>
p[title]{ /*[屬性名] 選擇含有指定屬性名的元素*/
color: tomato;
}
p[title = abc]{ /*[屬性名 = 屬性值] 選擇含有指定屬性名和屬性值的元素*/
font-family: '華文彩雲';
}
p[title ^= abc]{ /*[屬性名 ^= 屬性值] 選擇屬性值以指定開頭的元素*/
font-size: 40px;
}
p[title $= de]{ /*[屬性名 $= 屬性值] 選擇屬性值以指定結尾的元素*/
font-size: 60px;
font-weight: bold;
}
</style>
</head>
<body>
<h1>靜夜思</h1>
<p title="abc">床前明月光</p>
<p title="abcde">疑似地上霜</p>
<p title="fde">舉頭望明月</p>
<p id="gray">低頭思故鄉</p>
注意事項
1. style
- style中的語句不支援HTML語句,屬於CSS,包括註釋# HTML
基本框架
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<title>無標題文件</title>
</head>
<body>
</body>
</html>
iframe內聯框架
<iframe src="https://www.bilibili.com" frameborder="0" width="1450" height="1000"></iframe>
不常用,有缺點
基礎
1. 標題(h)
<h1>一級標題</h1> 一般一個網頁中只有一個h1標題
<h2>二級標題</h2>
拓展
<!--
hgroup標籤用來為標題分組
將一組相關的標題放入同一組中
-->
<hgroup>
<h1>你好</h1>
<h2>我是</h2>
</hgroup>
2. 段落(p)
<p>Hello World!</p> <!-- 形成一個段落 -->
<br>Hello World!</br> <!-- 折行,但不形成段落 -->
<blockquote>獨佔一行的塊元素</blockquote> <!--引用 -->
3. 連結(a)
<a href="https://www.bilibili.com/">這是一個連結</a>
4. 影象(img)
-
img元素屬於替換元素(基於塊元素和行內元素之間,具有兩種元素的特點)
-
alt 圖片的描述,預設情況下不會顯示,當圖片載入失敗的時候會顯示
但搜尋引擎會根據alt中的內容識別圖片,如果不寫alt屬性則不會被搜尋引擎收錄
-
title屬性 可以顯示圖片或文字的屬性
<img title="多多和小小初次購物" src="../圖片/影象.jpg" alt="多多and小小" width="200" >
<!--若只設置width(height),不設定height(width)則會等比例縮放 -->
- 拓展
- jepg(jpg):支援的顏色比較豐富,不支援透明效果,不支援動圖
- gif:支援的顏色較少,支援簡單透明,支援動圖
- png:支援的顏色豐富,支援複雜透明,不支援動圖
- webp:谷歌推出的專門用來表示網頁中的圖片的一種格式,具備前三種的所有優點,記憶體小
- base64:希望圖片載入速度快的時候使用,將圖片轉換成編碼的形式,隨瀏覽器載入一起出
5. 註釋( )
<!--這是一個註釋-->
6. 水平線(hr)
<hr>
屬性
body屬性
值 | 描述 |
---|---|
class | 為html元素定義一個或多個類名(classname)(類名從樣式檔案引入) |
id | 定義元素的唯一id |
style | 規定元素的行內樣式(inline style) |
title | 描述了元素的額外資訊 (作為工具條使用) |
-
拓展
title 標籤的內容會作為瀏覽器搜尋結果的超連結上的文字
a 標籤的屬性
target 屬性
<a target="value">
值 | 描述 |
---|---|
_blank | 在新視窗中開啟被連結文件。 |
_self | 預設。在相同的框架中開啟被連結文件。 |
_parent | 在父框架集中開啟被連結文件。 |
_top | 在整個視窗中開啟被連結文件。 |
framename | 在指定的框架中開啟被連結文件。 |
type 屬性
<a type="value">
屬性 | 描述 |
---|---|
MIME type | 規定被連結文件的的 MIME 型別。 |
hreflang 屬性
<a hreflang="value">
<a href="https://www.bilibili.com" hreflang="zh">B站</a>
name 與 id 屬性
-
name(id)可傳送至錨處
<a name="top">top</a> <!--錨--> <a href="#top">去top</a> <!-- 傳送 -->
拓展
-
可在開啟新網頁的時候定位到錨處
<a href="http://127.0.0.1:5500/basic.html#foot">訪問到foot處</a>
-
head 屬性
標籤 | 描述 |
---|---|
head | 定義了文件的資訊 |
title | 定義了文件的標題 |
base | 定義了頁面連結標籤的預設連結地址 |
link | 定義了一個文件和外部資源之間的關係 |
meta | 定義了HTML文件中 |
script | 定義了客戶端的指令碼檔案 |
style | 定義了HTML文件的樣式檔案 |
<meta charset="UTF-8" name="keywords" content="HTML,學習,小小,多多">
<meta charset="UTF-8" name="description" content="HTML,學習,小小,多多">
字型(font)
1. 顏色
<font style="color: brown;">Hello World!</font>
2. 大小
<font style="font-size: 20px;">Hello World!</font>
<p style="font-size: 20px;">Hello World!</p>
3. 型別
<p style="font-family:華文彩雲;">你好世界!</p>
<font style="font-family:華文彩雲;">Hello World!</font>
文字格式化
1. 文字格式化標籤
<b>Hello World!</b> <!-- 加粗文字 -->
<em>Hello World!</em> <!-- 定義著重文字 -->
<i>Hello World!</i> <!-- 斜體 -->
<strong>Hello World!</strong> <!-- 強化語氣 -->
<blockquote>獨佔一行的塊元素</blockquote>
列表
列表之間可以互相巢狀
屬性 | 描述 |
---|---|
ul | 無序列表(用的最多) |
ol | 有序列表 |
dl | 定義列表 |
<dl>
<dt>HTML</dt> <!--dt定義名,dd定義的內容-->
<dd>HTML稱為超文字標記語言,是一種標記語言。它包括一系列標籤.
通過這些標籤可以將網路上的文件格式統一,使分散的Internet資源連線為一個邏輯整體。
HTML文字是由HTML命令組成的描述性文字,HTML命令可以說明文字,圖形、動畫、聲音、表格、連結等
</dd>
</dl>
音訊(audio)和視訊(video)
1. 音訊
- controls:允許使用者控制
- autoplay:自動播放
- loop:迴圈播放
<audio src="" controls autoplay loop></audio>
-
拓展
<!-- 可用來播放音訊失敗時提示使用者升級瀏覽器 <audio controls> 對不起,你的瀏覽器不支援播放音訊,請升級瀏覽器 <source src="./音訊/雙笙_封茗囧菌-霜雪千年.mp3"> </audio> --> <embed src="./音訊/雙笙_封茗囧菌-霜雪千年.mp3" type="audio/mp3" width="300"> <!-- embed所有瀏覽器都支援,但版本很舊-->
2. 視訊
- 方法和audio基本一致
<audio controls>
對不起,你的瀏覽器不支援播放視訊,請升級瀏覽器
<source src="./">
</audio>
<embed src="./" type="audio/mp4" width="300">
// embed所有瀏覽器都支援,但版本很舊
3. 注意示項
- 一般不會引入本地視訊
注意事項
-
如果需要書寫特殊符號,則需要用Html中的實體(轉義字元)
&實體的名字
顯示結果 實體名稱 描述   空格 < < 小於號 > > 大於號 & & 和號 " " 引號 ` &apos 撇號 ¢ ¢ 分(cent) £ £ 鎊(pound) ¥ ¥ 元(yen) € &euro 歐元(euro) § § 小節 © © 版權(copyright) ® ® 註冊商標 ™ &trade 商標 × × 乘號 ÷ ÷ 除號
CSS
基本框架
1. 內聯(行內)樣式
- 直接在HTML語句中定義
<p style="color: red; font-size: 30px;">命數入織,當為磐石</p>
- 缺點
- 樣式只能對一個標籤生效
- 對多個元素生效時,需每一個都定義一次
- 修改樣式麻煩,需一個一個修改,不方便
2. 在head中的style定義
- 在CSS選擇器中定義樣式
<style>
p{
color: red;
font-size: 30px;
}
</style>
-
優點
- 可同時為多個標籤定義樣式,修改時只需修改一處即可應用全部
-
缺點
- 但只能對當前的一個網頁有效,不能跨介面複用
3. 外部樣式表
- 定義一個.css檔案
- 然後用link語法連結
<link rel="stylesheet" href="./樣式表.css">
常用選擇器
id 與 class
- id
- 定義:根據元素的id屬性值選中一個元素
- 語法:#red{}
- 注意:最好不要重複使用,id屬於唯一值
<style>
#gray{
color: gray;
}
</style>
</head>
<body>
<h1>靜夜思</h1>
<p>床前明月光</p>
<p>疑似地上霜</p>
<p>舉頭望明月</p>
<p id="gray">低頭思故鄉</p>
- class
- 定義:與id相似,但可以重複使用
- 語法:.blue{}
- class可以為元素分組
- 一個元素可以指定多個class元素,class之間用空格間開
<style>
#gray{
color: gray;
}
.blue{
color: blue;
}
.one{
font-size: 15px;
}
</style>
</head>
<body>
<h1>靜夜思</h1>
<p class="blue one">床前明月光</p> <!--指定多個class元素-->
<p class="blue">疑似地上霜</p>
<p class="blue">舉頭望明月</p>
<p id="gray">低頭思故鄉</p>
通配選擇器
*{
<!-- 作用於整個CSS -->
}
複合(交集)選擇器
-
定義:同時複合多個條件的元素
-
語法:h1,h2{}
<style>
p.two{
font-size: 30px;
font-family: "華文彩雲";
}
</style>
</head>
<body>
<div class="two">HTML</div>
<p class="two">CSS</p>
關係選擇器
- 定義
- 語法
- div>p div.one>p div>p>span p+h4 div~span
<style>
div>span{ /*子元素選擇器 語法:父元素>子元素
font-size: 40px;
font-family:'宋體';
color: orange;
}
div.one>p{ /*父子選擇器結合class標籤
font-size: 30px;
color: chocolate;
}
div>span>p{ /*父子選擇器*/
font-size: 40px;
color: teal;
}
p + h4{
font-family: '草書'; /*兄弟選擇器 語法:前一個+後一個 (只選擇緊挨著的第一個元素)*/
color: violet;
}
div ~ span{ /*兄弟選擇器(選擇下面所有的兄弟元素)*/
font-size: 20px;
color: royalblue;
}
</style>
</head>
<body>
<div>
<span>
div內的span
<p>div>span>p</p>
</span>
</div>
<div class="one">
<p>div與class</p>
<h4>p旁邊的h4元素</h4>
</div>
<span>div外的span</span>
屬性選擇器
-
語法:[屬性名] 選擇含有指定屬性名的元素
[屬性名 = 屬性值] 鑽則含有指定屬性名和屬性值的元素
<style>
p[title]{ /*[屬性名] 選擇含有指定屬性名的元素*/
color: tomato;
}
p[title = abc]{ /*[屬性名 = 屬性值] 選擇含有指定屬性名和屬性值的元素*/
font-family: '華文彩雲';
}
p[title ^= abc]{ /*[屬性名 ^= 屬性值] 選擇屬性值以指定開頭的元素*/
font-size: 40px;
}
p[title $= de]{ /*[屬性名 $= 屬性值] 選擇屬性值以指定結尾的元素*/
font-size: 60px;
font-weight: bold;
}
</style>
</head>
<body>
<h1>靜夜思</h1>
<p title="abc">床前明月光</p>
<p title="abcde">疑似地上霜</p>
<p title="fde">舉頭望明月</p>
<p id="gray">低頭思故鄉</p>
注意事項
1. style
- style中的語句不支援HTML語句,屬於CSS,包括註釋