第五届字节跳动青训营 前端进阶学习笔记(一)前端和HTML

news2024/11/22 20:27:55

文章目录

      • 1.前言
      • 2.什么是前端
      • 3.前端需要关注哪些问题
      • 4.HTML语法
      • 5.HTML标签
      • 6.HTML中的内容划分
      • 7.总结

这是我参与「第五届青训营 」伴学笔记创作活动的第 1 天

1.前言

本次课程主要介绍了:

  • 前端要解决的基本问题
  • HTML的基本定义和语法
  • 为什么要语义化和怎么做的语义化

2.什么是前端

使用Web技术栈解决多端图形GUI交互问题。

3.前端需要关注哪些问题

  • 功能
  • 美观
  • 无障碍
  • 安全
  • 性能
  • 兼容
  • 性能

4.HTML语法

  • 标签和属性不区分大小写,推荐小写
  • 空标签可以不用闭合,比如input
  • 属性值推荐用双引号包裹
  • 某些属性可以省略,比如required、readonly

5.HTML标签

(1)标题和段落

使用h1~h6标签可以定义文章标题,HTML分别给它们指定了默认的样式。而文章中的段落使用p标签定义。

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

image.png

这是可能有人就要问了,我用div和span同样可以实现标题和段落效果啊,为什么非得用h1标签和p标签呢?

    <div style="margin:20px 0;font-size:32px;font-weight: 600;">一级标题</div>
    <span>一级标题内容</span>

虽然上述代码同样也可以做到和h1标签+p标签一样的效果,但是这么写的代码语义一点都不明确,页面展示效果上确实做到了h1+p标签一样的效果,但代码却无法让人一眼看出这是标题+段落的组合,换成以下标签组合明显语义更加清晰,且不用写额外的样式代码。

    <h1>一级标题</h1>
    <p>一级标题内容</p>

为什么要使用语义化标签?

  • 提高代码的可的可读性和可维护性
  • 有益于SEO
  • 提升无障碍性

如何实现语义化?

  • 了解每个标签的属性和含义
  • 思考什么标签最适合描述这个内容
  • 不使用可视化工具生成代码

(2)列表

  • 有序列表
    有序列表使用ol标签定义。列表项会被自动地添加上序号,ol标签本身具有默认的margin和padding属性值。
<ol style="border: 1px solid blue">
    <li>1</li>
    <li>2</li>
    <li>3</li>
</ol>

image.png

  • 无序列表
    无序列表使用ol标签定义。列表项会被自动地添加上列表项符号,ul标签本身具有默认的margin和padding属性值。
<ul style="border: 1px solid blue">
    <li>1</li>
    <li>2</li>
    <li>3</li>
</ul>

image.png

  • 自定义列表
    自定义列表使用dl标签定义,其中dt标签定义列表项标题,dd属性定义列表项属性。dd属性具有默认的margin属性值。
<dl style="border: 1px solid blue">
    <dt>作者:</dt>
    <dd>a</dd>
    <dt>编辑:</dt>
    <dd>b</dd>
    <dd>c</dd>
</dl>

image.png
(3)多媒体标签
网页中的多媒体内容通常有:图像、视频和音频,这三种多媒体内容在HTML中分别使用img标签、video标签和audio标签定义。这三个标签都有一个src属性,用来指向需要嵌入的资源路径。在img标签中,还定义了alt属性,这个属性主要用来做内容退化处理,即某一次资源未能按照预期加载时,将会以alt中的内容替代显示。

  <p><img src="1.jpg" width="300px" alt="[图片]1.jpg"></p>
  <p><audio src="1.mp3" controls></p>
  <p><video src="1.mp4" controls></p>

image.png

(4)链接

链接使用a标签定义,href指向跳转路径,target属性指定跳转方式,通常有_self当前页面跳转、_parent父级框架跳转、_blank新标签页跳转和_top顶级框架跳转这几种跳转方式。

<a href="https://juejin.cn/">跳转到掘金官网</a>

image.png
(5)表单控件

  • input
    使用input标签可以定义各种类型的文本输入框,单选、多选按钮以及提交按钮等表单控件。type属性用于指定input的控件类型。
<p><input type="text"></p>
  <p><input type="password"></p>
  <p>
    <input type="radio" name="sex" value="male"><input type="radio" name="sex" value="female"></p>
  <p>
    <input type="checkbox" name="vehicle" value="Bike">我喜欢自行车<br>
    <input type="checkbox" name="vehicle" value="Car">我喜欢小汽车
  </p>
  <p><input type="submit"></p>

image.png

也可以给input添加候选列表来提供输入建议。

  <input list="browsers" placeholder="请选择浏览器">
  <datalist id="browsers">
    <option value="Internet Explorer">
    <option value="Firefox">
    <option value="Chrome">
    <option value="Opera">
    <option value="Safari">
  </datalist>

image.png

  • select
    使用select可以定义下拉选项控件。option定义选项。
选择年份:<select>
    <option>2023</option>
    <option>2022</option>
    <option>2021</option>
    <option>2020</option>
  </select>

image.png
(6)文本标签

  • 引用
    表示引用的标签主要有三种:blockquote、cite和q。其中,blockquote表示引用了来着其他地方的某段内容,比如下文中我引用了MDN文档中对HTML的定义;cite则表示对某部作品的名称或者专有名词的引用,通常会给内容加上斜体的样式;而q标签则表示的是语义上的引用,即给内容加上双引号,表示该内容具有特殊含义。
  <p>
    <blockquote>
      就其核心而言,HTML 是一种相当简单的、由不同元素组成的标记语言,它可以被应用于文本片段,使文本在文档中具有不同的含义(它是段落吗?它是项目列表吗?它是表格吗?),将文档结构化为逻辑块(文档是否有头部?有三列内容?有一个导航菜单?),并且可以将图片,影像等内容嵌入到页面中。本模块将介绍前两个用途,并且介绍一些 HTML 的基本概念和语法。
    </blockquote>
  </p>
  <p><cite>《挪威的森林》</cite></p>
  <p><q>HTML</q></p>

image.png

  • 代码
    使用code标签包含代码内容时,代码内容将会以一种等宽的字体显示。
  <code>
    <pre>
      const a = 1;
      a++;
      console.log(a);
    </pre>
  </code>

image.png

  • 强调
    通常使用strong和em两个标签来表示对文本的强调,其中,强者表示字面意义上的强调,即使文本加粗,来强调该内容的重要性。而后者则表示语气上的重读,比如“我是小明”这句话中,强调的是自己的身份,因此是字应该重读。
    <p>HTML是一种<strong>超文本</strong>标记语言</p>
    <p><em></em>小明</p>

image.png

6.HTML中的内容划分

一个基本的HTML文件通常会按照以下的结构进行划分。

image.png

7.总结

HTML主要的任务是展示内容,向用户传达信息,而不是单纯对样式的引用。因此,学习语义化相关知识,并在实际编码过程中,实践不同的语义化规范,是一个前端工程师的基础必修课。同时,是否具有良好的语义化,也是判断一个页面好坏的标准。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深度学习——梯度

一、初识梯度 import torch x torch.arange(4.0) print(x) x.requires_grad_(True) y 2 * torch.dot(x, x) #torch.matmul(x, x) print(y) y.backward() print(x.grad) print(x.grad 4*x)输出&#xff1a; tensor([0., 1., 2., 3.]) tensor(28., grad_fn<MulBackward0&g…

批次标准化Batch Normalization

批次标准化Batch Normalization 目录 批次标准化Batch Normalization 为什么需要批次标准化 产生上述变化趋势不匹配的原因 处理方法 处理方法的优化 Batch Normalization的引出Testing时的相应处理 批次标准化Batch Normalization 第五节 2021 - 类神经网络训练不起来怎么…

从【卡内基梅隆大学机器人概论课】认识机器人学科需要哪些技能栈

闲来无事&#xff0c;找到了卡内基梅隆大学机器人研究所&#xff0c;看了下他们机器人的教育&#xff0c;不得不感慨相比我们学校先进了不知多少&#xff0c;是真真切切让同学们去了解机器人的方方面面&#xff0c;下面摘自它们的概论作业。 作业0 作业1 作业2 作业3 作业4 作…

LeetCode 79 单词搜索 | 解题思路分享

原题链接&#xff1a;79. 单词搜索 题目难度&#xff1a;中等 题目描述 给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 单词必须按照字母顺序&#xff0c;通过相邻的…

css03笔记

目录 css三大特性 优先级 权重叠加计算 chrome调试工具 盒子模型 1.1 盒子模型的介绍 2.1内容的宽度和高度 3.1边框&#xff08;border&#xff09; 3.2边框-单方向设置 3.3边框-单个属性 综合案例一&#xff08;新浪导航&#xff09; 4.1 内边距&#xff08;paddi…

5.11回溯法--电路板排列问题--排列树

问题描述 将n块电路板以最佳排列插入带有n个插槽的机箱中&#xff0c;要求对于给定的电路板连接块&#xff0c;确定最佳排列&#xff0c;使其具有最小的密度。设x[ ] 表示n块电路板的一个排列&#xff0c;x[ i ]表示在机箱的第 i 个插槽中插入电路板x[ i ]&#xff0c;x确定的电…

尚硅谷ES6李强笔记

1.课程介绍 1.es是什么 2.新特性的优点 3.学习课程必备知识背景 2.相关名词介绍 3. let变量声明以及声明特性 3.1变量声明方式 //普通声明 let a;//一次性声明多个变量 let a,b,c;//声明并且初始化 let a 100;//一次性声明多个并且初始化 let a2,b1,ci love you;3.2不允许重…

打工人必学的法律知识(一)——《中华人民共和国劳动合同法》必知必会

目录 一、劳动合同无效或者部分无效 二、竞业限制 三、劳动合同的履行和变更 四、劳动合同的解除和终止 一、劳动合同无效或者部分无效 第二十六条 下列劳动合同无效或者部分无效&#xff1a;&#xff08;一&#xff09;以欺诈、胁迫的手段或者乘人之危&#xff0c;使对方…

使用FFmpeg命令处理音视频

文章目录前言一、ffprobe相关命令1.使用ffprobe查看音频文件的信息2.使用ffprobe查看视频文件的信息二、ffplay相关命令1.基本的ffplay命令2.音视频同步命令三、ffmpeg相关命令1.ffmpeg通用参数2.ffmpeg视频参数3.ffmpeg音频参数4.ffmpeg示例总结前言 FFmpeg是一套可以用来记录…

【C语言】字符函数,字符串函数,内存函数及其模拟实现

文章目录求字符串长度strlen长度不受限制的字符串函数strcpystrcatstrcmp长度受限制的字符串函数strncpystrncatstrncmp字符串查找函数strstrstrtokstrerror字符函数字符分类函数字符转换函数内存操作函数memcpymemmovememsetmemcmp求字符串长度 strlen 函数功能 求字符串长…

【机器学习之模型融合】Voting投票法简单实践

目录 前言&#x1f49c; 1、使用sklearn实现投票法&#x1f494; 1.1、导入工具库&#xff0c;准备数据&#x1f495; 1.2、定义交叉验证评估函数&#x1f496; 1.3、建立基于交叉验证的benchmark、做模型选择&#x1f31f; 1.4、构建多组分类器、进行融合&#x1f4a5;…

单线程的Node.js能开发高并发服务器程序吗?

文章目录前言Nodejs的事件驱动机制EventLoop vs NSRunLoopNSRunLoopios next runloop异步/事件循坏机制的那些坑批量迁移数据原子性参考文献前言 这篇文章还是从一个在写Node.js程序中遇到的问题说起。本周在做数据库迁移的时候&#xff0c;写了下面一段代码&#xff0c;目的是…

代数与逻辑:作业四 神经网络

代数与逻辑&#xff1a;作业四 神经网络 文章目录代数与逻辑&#xff1a;作业四 神经网络一、作业要求二、简述神经网络模型三、编程实现感知机模型与二隐层神经网络1、感知机模型2、二隐层神经网络四、选择公开数据集&#xff0c;测试感知机模型与二隐层神经网络性能一、作业要…

如何高效学习?一年学完麻省理工4年计算机课程

斯科特.杨用用10天拿下线性代数&#xff0c;用1年时间学完麻省理工大学4年的计算机课程&#xff0c;他是如何做到的&#xff1f;他在这本书《如何高效学习》中做了具体阐述。 斯科特.杨很早就发现&#xff0c;在美国有一半的学生在死记硬背&#xff0c;这些学生并不知道使用整体…

动手学区块链学习笔记(二):区块链以及工作量证明算法

引言 紧接上文&#xff0c;在介绍完区块链中的加密解密以及公钥私钥等算法后&#xff0c;本篇开始正式进入区块链概念与一个简单区块链系统的实现过程介绍。 区块链技术介绍 什么是区块链&#xff1f; 区块链&#xff0c;就是一个又一个区块组成的链条。每一个区块中保存了一…

制造企业数据/经营分析框架

背景 随着大数据技术发展以及数字化转型概念的普及&#xff0c;传统企业特别是制造业&#xff0c;也开始投入人力、资金&#xff0c;建立自己的数据分析团队&#xff0c;期望通过数据分析赋能企业的发展/转型。尽管&#xff0c;国内华为、美的、海尔、三一、徐工等制造业龙头企…

挡不住,逃不过,还是阳了

自从放开后&#xff0c;身边的&#x1f40f;陆陆续续多了起来。现在都不敢在食堂吃饭了&#xff0c;每次都是打包到工位吃&#xff0c;上班时也是都戴着口罩。每天回家后都是一顿扫射&#xff0c;用医用酒精做全身消毒。但是&#xff0c;还是没挡住&#xff0c;该来的还是来了。…

Leetcode:450. 删除二叉搜索树中的节点(C++)

目录 问题描述&#xff1a; 实现代码与解析&#xff1a; 递归&#xff1a; 原理思路&#xff1a; 含有内存释放版&#xff1a; 问题描述&#xff1a; 给定一个二叉搜索树的根节点 root 和一个值 key&#xff0c;删除二叉搜索树中的 key 对应的节点&#xff0c;并保证二叉搜…

Day860.高性能数据库连接池HiKariCP -Java 并发编程实战

高性能数据库连接池HiKariCP Hi&#xff0c;我是阿昌&#xff0c;今天学习记录的是关于高性能数据库连接池HiKariCP的内容。 实际工作中&#xff0c;总会难免和数据库打交道&#xff1b; 只要和数据库打交道&#xff0c;就免不了使用数据库连接池。 业界知名的数据库连接池…

2023/1/15 JS-作用域与作用域链

1 作用域 理解 - 就是一块"地盘", 一个代码段所在的区域&#xff0c;它是静态的(相对于上下文对象), 在编写代码时就确定了 分类&#xff1a; 全局作用域函数作用域 没有块作用域(ES6有了) -->(java语言也有) if (true) {var a 3}console.log(a); // 3作用&am…