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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈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…