Django3 - Web前端開發基礎 HTML、CSS和JavaScript

????????網站開發可以分為前端開發和后端開發,前端開發是指網頁設計,我們在瀏覽器看到網站的圖片、文字、音樂視頻等內容排版都是由前端開發人員實現的;后端開發是為前端開發提供實際的數據內容和業務邏輯,比如提供文字內容、圖片和音樂視頻的路徑地址等信息。

????????前端開發人員必須掌握HTML、CSS和JavaScript的基礎語言,這些基礎語言上延伸了許多前端框架,比如jQuery、Bootstrap、Vue、React和AngularJS等。后端開發人員必須掌握一種或多種后端開發語言、數據庫應用原理、Web服務器應用原理和基礎運維技術,目前較為熱門的后端開發語言分別有Java、PHP、Python和GO語言;數據庫為MySQL、MSSQL、Oracle和Redis等。

????????盡管明確劃分了網站開發的職責,在實際工作中,特別是一些中小企業,他們也要求后端開發人員必須掌握前端開發技術,但無須精通前端開發,只要掌握基本的應用開發即可,比如調整網站布局或編寫簡單的JavaScript腳本。

????????使用Django3開發網站,還需要掌握前端的基礎知識。

一、HTML

????????HTML是超文本標記語言,標準通用標記語言下的一個應用。?“超文本”就是指頁面內可以包含圖片、鏈接,甚至音樂、程序等非文字元素。超文本標記語言的結構包括“頭”部分(Head)和“主體”部分(Body),其中“頭”部分提供關于網頁的信息,?“主體”部分提供網頁的具體內容。下面來看一個簡單的HTML文檔的結構:

為開頭和結尾,整個HTML可分為兩部分:

(1)<head></head>,主要是對網頁的描述、圖片和JavaScript的引用。<head>元素包含所有的頭部標簽元素。在<head>元素中可以插入腳本(scripts)、樣式文件(CSS)及各種meta信息。該區域可添加的元素標簽有<title>、<style>、<meta>、<link>、<script>、<noscript>和<base>。

(2)<body></body>是網頁信息的主要載體。該標簽下還可以包含很多類別的標簽,不同的標簽有不同的作用,標簽以<>開頭,以</>結尾,<>和</>之間的內容是標簽的值和屬性,每個標簽之間可以是相互獨立的,也可以是嵌套、層層遞進的關系。

根據這兩個組成部分就能很容易地分析整個網頁的布局。其中,<body></body>是整個HTML的重點部分,通過示例講述如何分析<body></body>:

????????上述例子分析如下:

????????(1)<h1>和<div>是兩個不相關的標簽,兩個標簽是相互獨立的。

????????(2)<div>和<p>是嵌套關系,<p>的上一級標簽是<div>。

????????(3)<h1>和<p>這兩個標簽是毫無關系的。

????????(4)<h2>標簽包含一個<p>標簽,<p>標簽再包含一個<a>標簽,一個標簽可以包含多個標簽在其中。

????????除上述示例的標簽之外,大部分標簽都可以在<body></body>中添加,常用的標簽如表。

二、CSS

????????HTML代碼是保存在后綴名為.html的文件,而CSS樣式是保存在后綴名為.css的文件,然后在HTML代碼中調用CSS樣式文件。由于HTML代碼中會存在多個不同的元素,并且每個元素的網頁布局各不相同,因此需要使用CSS選擇器定位每個HTML元素,然后再編寫相應的CSS樣式。

????????CSS選擇器劃分了多種類型,同一個HTML元素可以使用不同的CSS選擇器進行定位,實際開發中最常用的CSS選擇器分別為:類別選擇器、標簽選擇器、ID選擇器、通用選擇器和群組選擇器,我們將簡單講述如何使用這些CSS選擇器實現HTML元素的網頁布局。

????????為了更好地理解CSS樣式的編寫規則,我們將重新定義HTML代碼,打開index.html文件,在該文件中定義網頁元素,詳細代碼如下:

????????上述代碼中使用link標簽引入同一路徑的index.css文件,link標簽是在HTML代碼中引入CSS文件,使CSS文件的樣式代碼能在HTML代碼中生效。然后設置了5個不同類型的HTML標簽,分別為<h3>、<div>、<p>、<input>和<button>,其中<div>設置了class屬性,<input>和<button>設置了id屬性。

????????下一步將使用類別選擇器、標簽選擇器、ID選擇器、通用選擇器和群組選擇器分別對這些HTML標簽進行樣式設置。

????????上述代碼中,我們依次使用通用選擇器、標簽選擇器、類別選擇器、ID選擇器和群組選擇器設置index.html的網頁布局,從代碼中可以歸納總結CSS選擇器的語法格式,如下所示。

????????CSS選擇器的語法說明如下:
(1)XXX代表CSS選擇器的類型。
(2)在CSS選擇器后面使用空格并添加中括號{},在中括號{}里面編寫具體的樣式設置。
(3)樣式設置以attribute:value表示,attribute代表樣式名稱,value代表該樣式設置的數值。多個樣式之間使用分號“;”隔開。
(4)如果要對樣式添加注釋,可以使用“/**/”添加說明。

????????我們回看index.css文件,該文件的樣式代碼說明如下:
(1)通用選擇器:它以符號“*”表示,這是設置整個網頁所有元素的樣式,用于網頁的整體布局。上述代碼是將整個網頁的字體大小設為30px。
(2)標簽選擇器:它以標簽名表示,如果網頁中有多個相同的標簽,那么標簽選擇器的樣式設置都會作用在這些標簽上。上述代碼是將所有h3標簽的字體顏色設為藍色。
(3)類別選擇器:它以.xxx表示,其中xxx代表標簽屬性class的屬性值,這是開發中常用的樣式設置之一。使用類別選擇器,必須在HTML的標簽中設置class屬性,在class屬性的屬性值前面加上實心點“.”即可作為類別選擇器。上述代碼是將class="content"的標簽放置網頁居中位置。
(4)ID選擇器:它以#xxx表示,其中xxx代表標簽屬性id的屬性值,這也是開發中常用的樣式設置之一。使用ID選擇器,必須在HTML的標簽中設置id屬性,在id屬性的屬性值前面加上井號“#”即可作為ID選擇器。上述代碼是將id=" message"的標簽設置寬度為500px。
(5)群組選擇器:它是將多個CSS選擇器組合成一個群組,并由這個群組對這些標簽進行統一的樣式設置,每個CSS選擇器之間使用逗號隔開。上述代碼是分別將id="submit"的標簽和p標簽的字體顏色設為紅色。

????????CSS樣式也可以直接在HTML文件里編寫,但在企業開發中,一般都采用HTML和CSS代碼分離,這樣便于維護和管理,而且利于開發者閱讀。


三、JavaScript

????????JavaScript(簡稱“JS”?)是一種具有函數優先的輕量級、解釋型的編程語言。它是因為開發Web頁面的腳本語言而出名的,但是也被用到了很多非瀏覽器環境中,JavaScript基于原型編程、多范式的動態腳本語言,并且支持面向對象、命令式和聲明式的編程風格。簡單來說,JavaScript是能被瀏覽器解釋并執行的一種編程語言。

????????JavaScript可以在HTML文件里編寫,但在企業開發中也是采用HTML和JavaScript代碼分離。

????????首先打開index.html文件,在HTML代碼中引入JS文件,并為button標簽添加事件觸發,詳細代碼如下:

????????從上述代碼看到,script標簽是在HTML代碼中引入JS文件,使得JS文件的JavaScript代碼能在HTML代碼中生效。button標簽添加了onclick屬性,該屬性是JS的事件觸發,當用戶單擊“提交”按鈕的時候,瀏覽器將會觸發事件onclick所綁定的函數getInfo()。JavaScript除了事件觸發onclick之外,還提供了其他的事件觸發,如表所示。

????????我們回看index.html的button標簽,由于該標簽的事件觸發onclick綁定了函數getInfo(),因此下一步在index.js里定義函數getInfo(),函數代碼如下:

????????上述代碼的document.getElementById是獲取id="message"的標簽(即input標簽)的屬性value的屬性值,JavaScript的document對象簡稱為DOM對象,它可以定位某個HTML標簽并進行操作,從而實現網頁的動態效果。document對象定義了7個對象方法,每個對象方法的詳細說明如表所示。

????????在實際開發中,我們經常使用getElementById、getElementsByName和getElementsByTagName方法來定位HTML標簽,然后再對已定位的HTML標簽進行操作。

--------------------------------------

沒有自由的秩序和沒有秩序的自由,同樣具有破壞性。

————————————————

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:
http://www.pswp.cn/pingmian/90167.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/90167.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/90167.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Nginx和Apache的區別

一。Nginx和Apache的優缺點和對比Nginx 優點Apache 優點性能與并發采用事件驅動模型&#xff0c;支持 10 萬 高并發連接&#xff0c;資源&#xff08;CPU / 內存&#xff09;占用極低生態成熟&#xff0c;內置模塊可直接處理動態內容&#xff0c;無需依賴第三方程序配置與部署…

前端實現可編輯腦圖的方案

前端實現可編輯腦圖的方案 實現可編輯腦圖(Mind Map)在前端有多種方案&#xff0c;以下是一些主流的技術方案&#xff1a; 1. 基于現有開源庫的方案 JavaScript 庫 MindElixir: 輕量級開源腦圖庫&#xff0c;支持節點增刪改、拖拽、導入導出等 GitHub: https://github.com/sssh…

7-大語言模型—指令理解:指令微調訓練+模型微調

目錄 1、指令微調的訓練過程 2、指令微調數據 2.1、“指令輸入” 2.2、“答案輸出” 3、指令微調數據的構建方法 3.1、手動構建&#xff1a;純人工 “出題 寫答案” 3.1.1、構建流程 3.1.1.1、定義任務類型 3.1.1.2、設計指令模板 3.1.1.3、人工標注響應 3.1.2、工…

服務器版本信息泄露-iis返回包暴露服務器版本信息

漏洞信息描述&#xff1a;服務器版本信息泄露 測試過程&#xff1a;訪問http://192.168.23.63&#xff0c;看返回包可以得知服務器版本信息 顯示暴露返回server版本信息 修復建議&#xff1a;限制返回包帶有服務器版本信息 如何隱藏IIS Web服務響應頭中的IIS Server版本信息…

rust嵌入式開發零基礎入門教程(二)

本教程的第二部分&#xff0c;我們將深入理解 Rust 語言的核心概念——所有權&#xff08;Ownership&#xff09;、借用&#xff08;Borrowing&#xff09;和生命周期&#xff08;Lifetimes&#xff09;。這些是 Rust 內存安全的基礎&#xff0c;也是初學者理解 Rust 最關鍵的部…

【黑產大數據】2025年上半年互聯網黑灰產趨勢年度總結

2025年上半年&#xff0c;互聯網黑灰產攻擊持續演化&#xff0c;呈現出更隱蔽、更智能、更產業化的趨勢。黑灰產從業人員數量繼續增長&#xff0c;攻擊資源、技術與作案場景全面升級。整體來看&#xff0c;2025年上半年黑灰產行業發生的幾大事件&#xff0c;也時刻印證了黑灰產…

低代碼/無代碼平臺如何重塑開發生態

低代碼/無代碼平臺通過降低技術門檻、提升開發效率、推動業務和IT深度融合重塑開發生態。 具體而言&#xff0c;低代碼/無代碼平臺極大降低了應用開發的技術門檻&#xff0c;使得非專業人員也能輕松構建業務應用。此外&#xff0c;它們通過可視化的開發模式&#xff0c;大幅提升…

ICA學習(2)

1.公式推導1.1兩個問題ICA算法會帶來2個不確定性&#xff1a;幅值不確定性和順序不確定性。1.2 推導觀測數據 x 是盲源 s 的線性混合&#xff1a;x As (1)此時&#xff0c;W矩陣是未知的&#xff0c;ICA算法的目的便是找到一個最優的矩陣W&#xff0c;實現對矩陣…

【愚公系列】《MIoT.VC》002-構建基本仿真工作站(布局一個基本工作站)

??【行業認證權威頭銜】 ? 華為云天團核心成員:特約編輯/云享專家/開發者專家/產品云測專家 ? 開發者社區全滿貫:CSDN博客&商業化雙料專家/阿里云簽約作者/騰訊云內容共創官/掘金&亞馬遜&51CTO頂級博主 ? 技術生態共建先鋒:橫跨鴻蒙、云計算、AI等前沿領域…

網絡協議相關

OSI七層模型包含物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層和應用層;TCP/IP四層模型將其簡化為網絡接口層、網絡層、傳輸層和應用層;映射關系:例如OSI的物理層和數據鏈路層對應TCP/IP的網絡接口層&#xff0c;主要處理MAC地址尋址和物理介質傳輸。協議模型對比兩者的…

【CNN】LeNet網絡架構

1.MLP多層感知機MLP&#xff08;Multilayer Perceptron&#xff09;&#xff0c;也是人工神經網絡&#xff08;ANN&#xff0c;Artificial Neural Network&#xff09;&#xff0c;是一種全連接多層感知機&#xff08;Multilayer Perceptron, MLP&#xff09;是一種前饋神經網絡…

VSCODE 禁用git 功能

第一步&#xff0c;打開設置第二步&#xff0c;搜 git:Enabled

Spring Boot05-熱部署

一、Spring Boot 啟動熱部署Spring Boot 啟動“熱部署&#xff08;Hot Deployment&#xff09;”&#xff0c;可以讓你在不重啟項目的情況下快速看到代碼變更的效果&#xff08;特別是前后端調試階段&#xff09;。1-1、什么是熱部署&#xff1f;熱部署是指&#xff1a;修改 Ja…

網站域名備案和服務器有關系嗎

域名備案的那些事兒域名備案&#xff0c;簡單來說&#xff0c;就是把你的網站信息登記到相關管理部門那里。這就好比你開個小店&#xff0c;得去工商局登記一下&#xff0c;讓人家知道你在干啥。根據我國相關規定&#xff0c;凡是使用大陸境內服務器提供服務的網站&#xff0c;…

2025華為ODB卷-推薦多樣性200分-三語言題解

?? 華為OD機試真題精選 2025B卷合集 推薦多樣性200分 問題描述 A先生正在設計一個推薦系統,需要考慮多樣性,要求從多個列表中選擇元素。系統一次性需要返回 N N N 屏數據(窗口數量),每屏展示 K K

ZeroMQ源碼深度剖析:網絡機制與性能優化實戰

目錄1 發布訂閱過濾的高效實現2 ZeroMQ的核心優勢3 常見Socket類型及應用4 異步連接實現機制5 斷線重連機制6 高水位線&#xff08;HWM&#xff09;深度解析7 消息丟失與錯誤處理8 消息幀&#xff08;Frame&#xff09;高級特性9 高效性實現原理10 無鎖消息隊列設計11 零拷貝實…

[數據庫]Neo4j圖數據庫搭建快速入門

[數據庫]圖數據庫基礎入門 概念 圖數據庫是一種使用圖結構&#xff08;節點、邊和屬性&#xff09;進行數據存儲和查詢的數據庫管理系統。與傳統的關系型數據庫不同&#xff0c;圖數據庫專注于實體之間的關系&#xff0c;特別適合處理高度互聯的數據。常見的圖數據庫包括&#…

本地數據庫有數據,web頁面無信息顯示,可能是pymysql的版本問題【pymysql連接本地數據庫新舊版本的區別】

pymysql連接本地數據庫新舊版本的區別新版本老版本python web下的settings文件 新版本 的pymysql 連接本地數據庫&#xff1a; mysql_conn pymysql.connect(hostself.conn_infos["HOST"],userself.conn_infos["USER"],passwordself.conn_infos["PAS…

【Linux-云原生-筆記】Haproxy相關

一、概念HAProxy&#xff08;High Availability Proxy&#xff09;是一款開源的高性能 TCP/HTTP 負載均衡器 和 反向代理 軟件&#xff0c;被廣泛應用于構建高可用、高并發的現代網絡架構。核心功能&#xff1a;負載均衡&#xff08;Load Balancing&#xff09;支持四層&#x…

智慧能源合同解決方案

01 能源行業合同管理核心痛點 1&#xff09;長期風險沉淀與動態環境失配&#xff1a;合同穩定性的根本矛盾 超長周期下的風險累積&#xff1a;20~30年的購售電協議&#xff08;PPA&#xff09;、EPC合同需覆蓋技術迭代&#xff08;如光伏組件衰減率&#xff09;、政策轉向&am…