【快速入门】前端御三家:HTML、CSS和JS

HTML

HTML,超文本标记语言,可以理解成骨架,是一个基础的东西。

一.基础结构

如图所示:

二.常见标签

1.标题标签

在页面上定义标题性的内容

<h1>一级标题</h1>
<h2>二级标题</h2>
<h3>三级标题</h3>
<h4>四级标题</h4>
<h5>五级标题</h5>
<h6>六级标题</h6>

2.段落标签

用于在页面上显示段落性质的内容

<p>段落内容
</p>

3.换行标签

<br> 换行,是单标签
<hr> 换行并加一条线,是单标签

4.列表标签

<ol></ol>:有序列表:

<ol><li>前端</li><li>后端</li><li>测试</li><li>运维</li><li>大数据</li>
</ol>

<ul></ul>:无序列表:

<ul><li>前端</li><li>后端</li><li>测试</li><li>运维</li><li>大数据</li>
</ul>

还可以将两种列表镶嵌在一起组成嵌套列表:

<ol><li>Java<ul><li>前端</li><li>后端</li><li>测试</li><li>运维</li><li>大数据</li></ul></li>
</ol>

5.超链接标签

点击后跳转连接:

<a href="地址" target="?"显示内容</a>

href中写地址,target中的?可以替换成两个东西:一个是 _blank  在新口中开目资源,另一个是  _self  在前口中开目资源。

6.多媒体标签

图片标签,可以在页面上放上一个图片:

<img src="路径"  title="鼠标放在照片上时显示的名字" alt="加载失败显示的名字" />

音频标签,可以在页面上放上一段音频:

<audio src="img/music.mp3" autoplay="autoplay" controls="controls" loop="loop" />
<video src="img/movie.mp4" autoplay="autoplay" controls="controls" loop="loop" />

解释:autoplay控制页面打开时音频是否自动播放,controls控制是否显示控制面板,loop控制是否进行循环播放

7.表格标签

table标签表示表格,tr标签表示一行,td标签表示行内的一格,th标签表示自和中效果的td

//例子
<table border="1px" style="width: 400px; margin: 0px auto;"><tr><th>排名</th> <th>姓名</th> <th>分数</th></tr><tr><td>1</td> <td>小明</td> <td>90</td></tr><tr><td>2</td> <td>小红</td> <td>80</td></tr><tr><td>3</td> <td>小刚</td> <td>70</td></tr>
</table>

单元格跨行跨列,使用td标签的rowspan属性来实现跨行,使用td标签的colspan属性来实现跨列:

<table border="1px" style="width: 400px; margin: 0px auto;"><tr><th>排名</th> <th>姓名</th> <th>分数</th> <th>备注</th></tr><tr><td>1</td> <td>小明</td> <td>90</td> <td rowspan="3">前三名</td></tr><tr><td>2</td> <td>小红</td> <td>80</td></tr><tr><td>3</td> <td>小刚</td> <td>70</td></tr><tr><td>总人数</td> <td colspan="2">50</td> <td rowspan="2">无</td></tr><tr><td>平均分</td> <td colspan="2">60</td></tr>
</table>

8.表单标签

form标签,用于定义可以让用户输入信息的表单项标签。其内部的action属性:用于定义信息提交的服务器的地址;method属性:用于定义信息的提交方式。

input标签,用于定义表单项。其内部的name属性:用于定义提交的参数名;type属性:用于定义表单项的类型(text:文本框,password:密码框,submit:提交按钮,reset:重置按钮)。

9.常用表单项标签

这个要和上面的表单标签一起看。

单行文本框:

个性签名:<input type="text" name="signal"/><br/>

多行文本框:

自我介绍:<textarea name="desc"></textarea>

密码框:

密码:<input type="password"/> <br>

单选框:

性别:<input type="radio" name="gender" value="男" checked="true"> 男<input type="radio" name="gender" value="女"> 女
<br>

复选框:

爱好:
<input type="checkbox" name="hobby" value="1"> 唱歌
<input type="checkbox" name="hobby" value="2"> 跳舞
<input type="checkbox" name="hobby" value="3"> rap
<input type="checkbox" name="hobby" value="4"> 篮球
<br>

下拉框:

地址:
<select name="pro"><option>北京</option><option>上海</option><option>广州</option><option>深圳</option>
</select>
<br>

可以通过在option中设置selected="selected" 属性实现默认选中的效果。

按钮:

<!-- 普通按钮:点击后无效,需要通过JS绑定单机响应函数 -->
<button type="button">普通按钮</button>
<!-- 重置按钮:点击后将表单内的所有表单项都恢复默认值 -->
<button type="reset">重置按钮</button>
<!-- 提交按钮:点击后提交表单 -->
<button type="submit">提交按钮</button>

隐藏域:

<input type="hidden" name="userId" value="1145"/>

通过表单隐藏域设置的表单项不会显示到页面上,用户看不到,但是提交表单时会一起被提交。用来设置一些需要和表单一起提交但是不希望用户看到的数据,

例如:用户id等等。

文件标签:

头像:<input type="file" name="file"/>

10.布局相关标签

div标签:俗称“块”,主要用于划分页面结构,做页面布局。

span标签:俗称“层”,用于划分元素范围,配合CSS做页面元素样式的修饰。

CSS

CSS可以修改文本等的字体颜色、背景颜色、字体大小、字体类型等等。

这里的CSS的用法不会说,比如怎么设置颜色,字体等,大家可以自行去:w3school 在线教程上查。

一.引入

1.行内式

将CSS代码与HTML代码混在一起,例子:

<input type="button" value="按钮" style="display: block;     width: 60px; 
height: 40px;       background-color: rgb(140, 235, 100); 
color: white;       border: 3px solid green;
font-size: 22px;   font-family: '隶书';
line-height: 30px; border-radius: 5px;">

如果写的少的话还行,要是多的话就太乱了,因此我们进一步,引出内嵌式。

2.内嵌式

将CSS代码放入head标签中,例子:

<style>input{display: block;     width: 60px; height: 40px;       background-color: rgb(140, 235, 100); color: white;       border: 3px solid green;font-size: 22px;   font-family: '隶书';line-height: 30px; border-radius: 5px;}
</style>

注意在head标签中要加style中写。

其实内嵌式还是没有解决问题,只是把在body问题转移给head,写多了还是很乱。这就引出了我们最常用最推荐的一种方法:连接式。

3.连接式

将我们要写的CSS代码写入一个CSS文件中,这个文件就是一个配置文件,我们要用的话直接调用就行了。这不仅是让HTML代码变的更加整洁,还统一了代码风格与便于代码维护。

配置文件:

input{display: block;     width: 60px; height: 40px;       background-color: rgb(140, 235, 100); color: white;       border: 3px solid green;font-size: 22px;   font-family: '隶书';line-height: 30px; border-radius: 5px;
}

<head>中的代码:

<link rel="stylesheet" href="01css.css">

二.选择器

1.标签选择器

根据我们选中的标签进行设置。下面的例子我们就是选择input标签进行设置。

<style>input{display: block;     width: 60px; height: 40px;       background-color: rgb(140, 235, 100); color: white;       border: 3px solid green;font-size: 22px;   font-family: '隶书';line-height: 30px; border-radius: 5px;}
</style>

标签选择器的问题是影响的范围太大,如果我们想要修改某一行的内容,但其会把全部都给改了

2.id选择器

我们可以给<body>标签里的input设置一个id,这样我们就可以根据id来进行选择去设置CSS。

<head><style>#btn{display: block;     width: 60px; height: 40px;       background-color: rgb(140, 235, 100); color: white;       border: 3px solid green;font-size: 22px;   font-family: '隶书';line-height: 30px; border-radius: 5px;}</style>
</head>
<body><input id="btn" type="button" value="按钮"/> 
</body>

语法就是:#id,详细的可以看上面代码。

id选择器解决了这个问题,其给style定义了一个id,在body使用时,输入id即可控制

但是id选择器不太灵活,如果我们想要的效果是一个复合效果

style中对字体、背景颜色、框形状都进行了定义

但是我们只想要其字体和框形状的部分,那我们就又要重新写一个

3.class选择器

我们在实际写代码中一个标签内的内容可能有多种组合,我们可以根据不同类型进行分类,比如分成颜色,字体,形状大小......

这个时候我们就要用class选择器了:

<head><style>.shapeClass{display: block;     width: 60px; height: 40px;}.colorClass{background-color: rgb(140, 235, 100); color: white;       border: 3px solid green;}.font{font-size: 22px;   font-family: '隶书';line-height: 30px; }</style>
</head>
<body><input  class ="shapeClass colorClass fontClass"type="button" value="按钮1"/> <input  class ="shapeClass colorClass" type="button" value="按钮2"/> <input  class ="colorClass fontClass" type="button" value="按钮3"/>
</body>

class选择器相当灵活,其将属性相同的内容放在一个class中,比如将字体大小、字体类型、字体颜色的设置放在一个class中

我们想要使用其属性时只需选择相应的class即可

4.复合选择器

顾名思义,就是将上面的选择器合在一起用。

<head><style>#div1,#div2{color: red;}</style>
</head>
<body><input id="div1" type="button" value="按钮1"/> <input id="div2" type="button" value="按钮2"/> <input id="div3" type="button" value="按钮3"/>
</body>

JavaScript

JavaScript (简称JS),是⼀个脚本语言,解释型或即时编译型的编程语言。虽然它是作为开发Web页面的脚本语言而出名,但是它也被用到了很多非浏览器环境中。

一.引入

与CSS的引入类似

1.行内式

即直接在我们写的标签中写JS:

<input type="button" value="点我⼀下" onclick="alert('haha')">

2.内部脚本引入

即通过script标签引入,位置随意,一般放在head标签中:

<head><script>function surprise(){alert("hello world")}</script>
</head>

3.外部脚本引入

引入外部提前写好的文档:

<script src="01JS.js"></script>

二.基础语法

1.数据类型

类型介绍
number数值类型,不区分整形还是浮点型
string字符串类型
boolean布尔类型
undefined表示未初始化的类型

2.变量

JS中的变量是弱变量,统一声明称let,一个变量可以多次声明,每次声明的类型可以不一样。比如一开始 let a=10 ,紧接着可以写 a="abc"。

3.运算符

类型运算符
算数运算符+ - * / %
复合算数运算符++ -- += -= *= /= %=
关系运算符< > <= >= == !=
逻辑运算符|| && 
条件运算符条件?A:B
位运算符& ^ << >> >>>

4.数组

JS的数组中的元素不要求类型相同。

创建方法:

//方法一
let arr = new Array();
//方法二
let arr = [];

数组常用的API:JavaScript Array 对象 | 菜鸟教程

5.函数

函数声明:

/* 语法1 :function 函数名 (参数列表){函数体} */function sum(a, b){return a+b;}letresult =sum(10,20);console.log(result)/* 语法2 : var 函数名 = function (参数列表){函数体}  */let add = function(a, b){return a+b;}let result = add(1,2);console.log(result);

6.对象

//方法一: 通过new Object()直接创建对象
let person =new Object();
// 给对象添加属性并赋值
person.name="小明";
person.age=10;
person.foods=["苹果","橘子","香蕉","葡萄"];
// 给对象添加功能函数
person.eat= function (){console.log(this.age+"岁的"+this.name+"喜欢吃:")for(let i = 0;i<this.foods.length;i++){console.log(this.foods[i])} 
}
//获得对象属性值
console.log(person.name)
console.log(person.age)
//调用对象方法
person.eat();
//方法二:,通过{}创建对象
var person ={"name":"张小明","age":10,"foods":["苹果","香蕉","橘子","葡萄"],"eat":function (){console.log(this.age+"岁的"+this.name+"喜欢吃:")for(var i = 0;i<this.foods.length;i++){console.log(this.foods[i])} }}//获得对象属性值
console.log(person.name)
console.log(person.age)
//调用对象方法
person.eat();

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/474084.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WebSocket实战,后台修改订单状态,前台实现数据变更,提供前端和后端多种语言

案例场景&#xff1a; 在实际的后台中需要变更某个订单的状态&#xff0c;在官网中不刷新页面&#xff0c;可以自动更新状态 在前端页面实现订单状态的实时更新&#xff08;不刷新页面&#xff09;&#xff0c;可以通过 WebSocket 的方式与后台保持通信&#xff0c;监听订单状态…

Django5 2024全栈开发指南(二):Django项目配置详解

目录 一、基本配置信息二、资源文件配置2.1 资源路由——STATIC_URL2.2 资源集合——STATICFILES_DIRS2.3 资源部署——STATIC_ROOT2.2.4 媒体资源——MEDIA 三、模板配置四、数据库配置4.1 mysqlclient连接MySQL4.2 pymysql连接MySQL4.3 多个数据库的连接方式4.4 使用配置文件…

近几年新笔记本重装系统方法及一些注意事项

新笔记本怎么重装系统&#xff1f; 近几年的新笔记本默认开启了raid on模式或vmd选项&#xff0c;安装过程中会遇到问题&#xff0c;新笔记本电脑重装自带的系统建议采用u盘方式安装&#xff0c;默认新笔记本有bitlocker加密机制&#xff0c;如果采用一键重装系统或硬盘方式安装…

黑马智数Day10

项目背景说明 后台管理部分使用的技术栈是Vue2&#xff0c;前台可视化部分使用的技术栈是Vue3 前台可视化项目不是独立存在&#xff0c;而是和后台管理项目共享同一个登录页面 微前端的好处 微前端是一种前端架构模式&#xff0c;它将大型单体应用程序分解为小的、松散耦合的…

Visual Studio 圈复杂度评估

VisualStudio自带的有工具 之后就可以看到分析结果

prop校验,prop和data区别

prop:组件上注册的一些自定义属性 prop作用&#xff1a;向子组件传递数据 特点&#xff1a; 可以传递任意数量&#xff0c;任意类型的prop 父组件 &#xff08;一个个地传递比较麻烦&#xff0c;可以直接打包成一个对象传过去&#xff0c;然后通过点属性接收&#xff09; <t…

ubuntu显示管理器_显示导航栏

ubuntu文件管理器_显示导航栏 一、原始状态&#xff1a; 二、显示导航栏状态&#xff1a; 三、原始状态--->导航栏状态: 1、打开dconf编辑器&#xff0c;直接在搜索栏搜索 dconf-editor ------如果没有安装&#xff0c;直接按流程安装即可。 2、进入目录&#xff1a;org …

跨平台WPF框架Avalonia教程 一

安装 安装 Avalonia UI 模板​ 开始使用 Avalonia 的最佳方式是使用模板创建一个应用程序。 要安装 Avalonia 模板&#xff0c;请运行以下命令&#xff1a; dotnet new install Avalonia.Templates 备注 对于 .NET 6.0 及更早版本&#xff0c;请将 install 替换为 --inst…

UE5 材质里面画圆锯齿严重的问题

直接这么画圆会带来锯齿&#xff0c;我们对锯齿位置进行模糊 可以用smoothstep&#xff0c;做值的平滑过渡&#xff08;虽然不是模糊&#xff0c;但是类似&#xff09;

【MySql】实验十六 综合练习:图书管理系统数据库结构

文章目录 创建图书管理系统数据库结构一、创建数据表1.1 book表1.2 reader表1.3 borrow表 二、插入示例数据2.1 向book表插入数据2.2 向reader表插入数据2.3 向borrow表插入数据 三、查询操作3.1 根据语义为借书表borrow的bno列和 rno列建立外键3.2 查询张小海编写的“数据库原…

QT QLabel双击事件

新建类&#xff1a; DoubleClickLabel .h #pragma once#include <QLabel>class DoubleClickLabel : public QLabel {Q_OBJECTpublic:DoubleClickLabel(QWidget *parent);~DoubleClickLabel(); signals:void doubleClicked();protected: //这里重写双击事件virtual v…

Vue3中实现插槽使用

目录 一、前言 二、插槽类型 三、示例 四、插槽的分类实现 1. 基本插槽 2. 命名插槽 3. 默认插槽内容 4. 作用域插槽&#xff08;Scoped Slots&#xff09; 5. 多插槽与具名插槽组合 一、前言 在 Vue 3 中&#xff0c;插槽&#xff08;Slot&#xff09;用于实现组件的内…

【学习笔记】科学计算

[pytorch 加速] CPU传输 & GPU计算的并行&#xff08;pin_memory&#xff0c;non_blocking&#xff09; https://www.bilibili.com/video/BV15Xxve1EtZ from IPython.display import Image import os os.environ[http_proxy] http://127.0.0.1:7890 os.environ[https_pr…

2、计算机网络七层封包和解包的过程

计算机网络osi七层模型 1、网络模型总体预览2、数据链路层4、传输层5.应用层 1、网络模型总体预览 图片均来源B站&#xff1a;网络安全收藏家&#xff0c;没有本人作图 2、数据链路层 案例描述&#xff1a;主机A发出一条信息&#xff0c;到路由器A&#xff0c;这里封装目标MAC…

在云服务器搭建 Docker

操作场景 本文档介绍如何在腾讯云云服务器上搭建和使用 Docker。本文适用于熟悉 Linux 操作系统&#xff0c;刚开始使用腾讯云云服务器的开发者。如需了解更多关于 Docker 相关信息&#xff0c;请参见 Docker 官方。 说明&#xff1a; Windows Subsystem for Linux&#xff…

Isaac Sim+SKRL机器人并行强化学习

目录 Isaac Sim介绍 OmniIssacGymEnvs安装 SKRL安装与测试 基于UR5的机械臂Reach强化学习测评 机器人控制 OMNI GYM环境编写 SKRL运行文件 训练结果与速度对比 结果分析 运行体验与建议 Isaac Sim介绍 Isaac Sim是英伟达出的一款机器人仿真平台&#xff0c;适用于做机…

【时间之外】IT人求职和创业应知【37】-AIGC私有化

目录 新闻一&#xff1a;2024智媒体50人成都会议暨每经20周年财经媒体峰会召开 新闻二&#xff1a;全球机器学习技术大会在北京召开 新闻三&#xff1a;区块链技术在金融领域的应用取得新突破 不知不觉的坚持了1个月&#xff0c;按照心理学概念&#xff0c;还要坚持2个月&am…

亿咖通科技应邀出席微软汽车行业智享会,分享ECARX AutoGPT全新实践

11月14日&#xff0c;全球出行科技企业亿咖通科技&#xff08;纳斯达克股票代码&#xff1a;ECX&#xff09;应邀于广州参加由微软举行的汽车行业智享会&#xff0c;揭晓了亿咖通科技对“AI定义汽车”时代的洞察与技术布局&#xff0c;分享了亿咖通科技汽车垂直领域大模型ECARX…

三维测量与建模笔记 - 点特征提取 - 4.3 Harris特征点

在3D重建应用中&#xff0c;很重要的一个场景是找到两幅图像中的同名特征点&#xff0c;这个过程需要对特征点进行提取和描述。 从上面描述可以看出&#xff0c;如果窗口处于颜色变化不明显或者没有变化的区域&#xff0c;E的值很小或为0&#xff1b;如果窗口处于边缘位置&…

C指针之舞——指针探秘之旅

❤博客主页&#xff1a;折枝寄北-CSDN博客 ❤专栏内容&#xff1a;C语言学习专栏https://blog.csdn.net/2303_80170533/category_12794764.html?spm1001.2014.3001.5482 指针基础学习 在之前的博客文章中&#xff0c;简单总结了指针的基础概念 我们知道了指针的概念&#xf…