前端學習(一)前端三層html,css,javaScript

學習網站

更多詳細學習網址:https://www.w3school.com.cn/

簡介

前端主要分爲三層,結構層、樣式層、行爲層。結構層即HTML標籤,標籤互相組合,構建了網頁的基本結構;樣式層即css,爲標籤添加樣式,比如標籤的顏色,大小,位置等等,結構層和樣式層組成了靜態頁面;最後行爲層即javaScript,我們可以在script標籤中動態修改頁面,通常我們用javaScript實現動態頁面。
下面就我最近關於html5,css,javaScript的學習簡單整理記錄一下,方便自己回憶。

html

初識html

我們常見的網頁基本上都是用html編寫的,常見的html架構如下:

<!DOCTYPE html>
<!--此元素可告知瀏覽器其自身是一個 HTML 文檔。-->
<html lang="en">
<!--定義文檔的頭部,它是所有頭部元素的容器。style和link標籤都定義在head中-->
<head>
    <meta charset="UTF-8">
    <title>text</title>
</head>
<!--定義文檔的主體。-->
<body>

</body>
</html>

其中<!DOCTYPE> 聲明不是 HTML 標籤;它是指示 web 瀏覽器關於頁面使用哪個 HTML 版本進行編寫的指令。

標籤

剛剛有說過靜態頁面由html標籤和css樣式組成,html標籤又分爲兩種,塊元素和行內元素,塊元素獨佔一行,而行內元素不獨佔一行,從左到右進行排列。
常用的塊元素有:標題<h1>\到<h6>,盒模型<div>,段落<p>,列表標籤<ul>、<ol>、<li>。
常用的行內元素有:超鏈接<a>、樣式元素<span>、圖片<img>、表單元素<input>。其中表單元素可以根據type類型劃分:text、password、date、color、range、submit、chechbox、radio。

屬性

每個標籤都具有自己的屬性,如我們常見的超鏈接<a href=“url”>text</a>,其中href屬性即爲其超鏈接屬性。更多詳細屬性可以從w3c中學習,這裏就不贅述了。
另外,我們可以爲標籤設置他們的class和id屬性,來控制他們的樣式和行爲。我們可以通過標籤選擇器對相應的標籤進行操作。id選擇器爲"#",class選擇器爲"."。

css

樣式簡介

樣式分爲外部樣式、內部樣式和行內樣式,優先級爲外部樣式<內部樣式<行內樣式。

  • 外部樣式:外部樣式通常是單獨的css文件,使用時,在html中的頭部<head>通過標籤<link>引入。
  • 內部樣式:內部樣式直接定義在頭部<head>的<style>中。
  • 行內樣式:行內樣式定義在標籤中,通過style屬性進行配置。

樣式中的盒模型

任何可視化標籤都具有三個屬性,外邊距margin,邊框border,內邊距padding。這三個屬性組成了盒模型。我們可以打開任意的網頁,進入開發者模式,可以看到Styles選項下有一個盒模型的圖片。


盒模式

定位

css一般通過屬性postion來配置定位模式,同時結合left、right、top、bottom屬性來設置偏移量。
css常用三種定位模式:

  • 固定定位:position:fixed,無論怎麼拖動頁面窗口,固定定位的標籤永遠固定在一個位置,常見的如一些網頁的廣告。
  • 相對定位:position:relation,相對於標籤原本應該在的位置發生的偏移。
  • 絕對定位:相對於該標籤的上級發生偏移,默認是body。但如果標籤的父標籤定位類型爲相對定位,則該標籤是在該父標籤內進行偏移。這也是前端常說的子絕父相。

浮動

通常我們的塊元素都獨佔一行,這種格式我們稱之爲文檔流。我們可以通過設置css屬性float來改變標籤的樣式,定義標籤向哪個方向浮動,一般值爲right或left。

javaScript

javaScript是前端的行爲層,通過腳本和函數,實現網頁的動態加載。
javaScript做爲前端三層的一層,其自身也由三部分組成。

  • ECMAScript:歐洲計算機協會每年6月定製的語法規範。
  • DOM:document object model文檔對象模型。
  • BOM:brower object model瀏覽器對象模型。

數據類型

JS的數據類型一共有六個,其中分爲五個基本數據類型和一個複雜數據類型。

  • 基本數據類型
    • String,字符串類型。
    • Number,數字類型,注意NaN(not a number)也是數字類型。
    • Boolean,布爾類型,true或者false。
    • undefined,未定義類型。
    • Null,空類型。
  • 複雜數據類型
    • Object,類對象。

語法

  1. JS中的腳本都必須寫在其作用域<script></script>標籤內。
  2. 變量必須先生命再使用,通常用var 聲明變量,用fuction聲明函數和類。
  3. 包含數字運算符5個加+、減-、乘*、除/、取餘%。比較運算符八個小於<、小於等於<=、相等==、大於等於>=、大於>、不等!=、全等===、不全等!==。邏輯運算符與&&、或||、非
  4. 條件語句和java類似,常用的有if、else、else if。
  5. 循環語句和java類似,常用的有有for、while、do while。

函數

函數在script標籤內,先定義再使用。用function來定義,可以有參數。參數有形參和實參兩種類型,在定義function時寫於小括號"()"中參數是形參,在代碼中調用函數傳入的參數是實參。
另外有全局變量和局部變量的概念。在函數內聲明的變量是局部變量。其他的變量都是全局變量。
函數中有一個很關鍵的this類型,代表函數的上下文。
原型是類的一個屬性prototype,通常我們在prototype中聲明類方法。

數組

JS中也存在數組,可以用[]表示。常用的方法有:

  • pop從尾部添加元素。
  • push從尾部彈出元素。
  • shift從頭部彈出元素。
  • unshift從頭部添加元素。
  • reverse反轉數組。
  • indexOf獲取元素的索引值。
  • join拼接數組。
  • slice(start,end)截取數組,返回[start,end)數組,不改變原數組。
  • splice(index,delNum)從index開始刪除delNum個元素,並返回修改後的數組。

總結

本節主要對前端三層理論進行整理,梳理了各層一些基本的概念。在下一章中,通過一個動態頁面來對學過的內容進行應用。
傳送門:前端學習(二)-士兵行走案例

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章