0 - 前端的基本概念

前端开发涉及HTML、CSS和JavaScript,用于构建网页和应用的GUI。HTML作为超文本标记语言,包括标题、列表、链接和多媒体元素。语义化HTML有助于提高代码可读性、可维护性和无障碍性,确保内容被正确理解和呈现。开发者应关注功能、美观、无障碍性和安全性,并遵循语义原则编写代码。
摘要由CSDN通过智能技术生成

0 - 前端的基本概念


前端的基本概念

什么是前端
  • 解决GUI人机交互问题
  • 跨终端
    • PC/移动浏览器
    • 客户端/小程序
    • VR/AR 等
  • Web技术栈
前端技术栈
  • JavaScript(行为)
  • CSS(样式)
  • HTML(内容)
前端应该关注的方面
  • 功能
  • 美观
  • 无障碍
  • 安全
开发环境
  • 浏览器
    • IE/Edge
    • Chrome
    • Firefox
    • Safari
  • 编辑器
    • VSCode - Visual Studio Code
    • Vim
    • WebStorm

HTML 的基本概念

HTML 是什么
  • HyperText Markup Language - 超文本标记语言
    • HyperText - 超文本 - 图片/标题/链接/表格
    • Markup Language - 标记语言 - <h1>一级标题</h1>
HTML 的基本结构
<!doctype html>
<html>
    <head>   
        <meta charset="UTF-8">
        <title>页面标题</title>
    </head>
    <body>
        <h1>一级标题</h1>
        <p>段落内容</p>
    </body>
</html>
  • <html></html> - 文档根标签
    • <head></head> - 文档元数据
    • <body></body> - 文档主体
HTML 的元素与属性
  1. 元素
    <!--开始标签-->
    <p>
        段落内容
    <!--结束标签-->
    </p>
    

    一个元素由一个开始标签和一个结束标签组成,<p></p>组成了一个段落元素

  2. 属性
    <img src="photo.jpg" />
    

    一个属性由属性名src和属性值photo.jpg组成,即key="value"

    img元素可以不使用额外内容,故仅插入/省略结束标签

HTML头 的常用元素
标签描述
<title>文档标题
<base>页面链接标签的默认链接地址
<link>一个文档和外部资源之间的关系
<style>HTML文档的样式文件
<meta>HTML文档中的元数据
<script>客户端的脚本文件

HTML 语法

HTML 标题
<h1>一级标题</h1>
<h2>二级标题</h2>
<h6>六级标题</h6>

HTML由6种标题,分别对应<h1> - <h6><h1>最大,<h6>最小

HTML 列表
1. 有序列表 - ordered list
<ol>
    <li>阿凡达</li>
    <li>泰坦尼克号</li>
    <li>复仇者联盟</li>
</ol>
2. 无序列表 - unordered list
<ul>
    <li>阿凡达</li>
    <li>泰坦尼克号</li>
    <li>复仇者联盟</li>
</ul>
3. 描述列表 - description list
<dl>
    <dt></dt>
    <dd></dd>
    <dt></dt>
    <dd>值1</dd>
    <dd>值2</dd>
    <dd>值3</dd>
</dl>

在描述列表中,使用键值对的形式表示每组值的关系,多个可以对应多个

<dt>:键 - terms

<dd>:值 - describes

HTML 链接
<a href="https://www.bytedance.com/">字节跳动官网</a>
<a href="https://www.bytedance.com/" target="_blank">字节跳动官网</a>

href="···":定义超链接地址

target="_blank":在新页面中打开

HTML 多媒体
1. 图片 - img
<img 
     src="https://lf3-static.bytednsdoc.com/obj/eden-cn/ubqnuhbnuho/movable_type.jpg" 
     alt="Metal movable type" 
     width="400" 
/>

src="":图片源(本地路径或网络地址)

alt="":替代性文本(Alternative Text),降级传达图片信息

width="":图片宽度

2. 音频 - audio
<audio 
  src="/assets/music.ogg"
  controls
></audio>

src:"":音频源

controls:显示浏览器默认音频控件(进度条/暂停/音量等)

3. 视频 - video
<video
  src="/assets/video.mp4"
  controls
></video>

src:"":视频源

controls:显示浏览器默认视频控件(进度条/暂停/音量等)

HTML 表单控件
1. <input> - 输入
<input placeholder="请输入用户名">
<input type="range" min="0" max="10" value="5">
<input type="number" min="1" max="10">
<input type="date" min="2018-02-10">

placeholder="":文本框占位符

type="range":创建一个滑条

type="number":限定文本框输入为数字

type="date":设置文本框为日历

2. <textarea> - 多行文本框
<textarea>Hey</textarea>

<textarea>:多行文本输入框

3. <checkbox> - 复选框
<label><input type="checkbox" />apple</label>
<label><input type="checkbox" checked />banana</label>

<label>:为input元素定义标注,即当用户选择该标签时,自动将焦点转到和标签相关的表单控件上

<type="checkbox">:复选框

<chechboxed>:初始选中

4. <radio> - 单选框
<label><input type="radio" name="sports" />football</label>
<label><input type="radio" name="sports" />basketball</label>

type="radio":单选框

name=""name值相同的input元素只能选定一个

5. <select> - 下拉框
<select>
    <option>peer</option>
    <option>apple</option>
    <option>bananan</option>
    <option>orange</option>
</select>

<select>:下拉框

<option>:下拉框选项

6. <datalist> - 预定义列表
<input list="countries" />
<datalist id="countries">
    <option>Greece</option>
	<option>United kingdom</option>
	<option>United States</option>
</datalist>

list="":加载预定义列表

<input list="">:该文本框允许输入任意值,但是为预定义列表提供补全功能

<datalist>:预定义选项列表

id="":与input元素的list属性相等,用于绑定<datalist><input>

HTML 文本控件
1. <blockquote> - 长引用
<blockquote cite="http://t.cn/RfjKO0F">
天才并不是自生自长在深林荒野里的怪物,是由可以使天才生长的民众产生、长育出来的,所以没有这种民众,就没有天才。
</blockquote>

<blockquote>:长引用

<cite>:引用的来源

2. <cite> - 短引用
我最喜欢的一本书是<cite>小王子</cite>。
在<cite>第一章</cite>,我们讲过<q>字符串时不可变量</q>

<cite>:一般用于作品名字或章节名

<q>:一般用于引用具体的内容

3. <code> - 代码块
<code>const</code>声明创建一个只读的常量。
<pre><code>
const add = (a, b) => a + b;
const multiply = (a, b) => a + b;
</code></pre>

<code>:定义一个代码块,长度不限

<pre>:定义一个预格式化文本,使用等宽字体

其余常用的还有:

<samp>:定义程序输出

<kbd>:定义键盘输入

<var>:定义变量

4. <strong> - 加粗
在投资之前,<strong>一定要做风险评估</strong>

</strong>:粗体,一般强调事情重要,严重,紧急

5. <em> - 斜体
Cats <em>are</em> cute animals.

<em>:斜体,一般用于强调语气上的强调

HTML 页面内容划分
HTML basic page division

<header>:页面头,一般放LOGO、导航等

<main>:页面主体,一般页面内只有一个main元素

<article>:页面正文,例如博客页面的一篇文章

<aside>:与页面内容相关,但不直接属于页面内容的,例如广告、热点文章等

<footer>:页尾,一般放参考、版权、备案等

HTML 语法的注意事项
  • 标签和属性不区分大小写,推荐小写
  • 空标签可以不闭合,比如inputmeta
  • 属性值推荐使用双引号包裹,即"属性值"
  • 某些属性值可以省略,例如requiredreadonly

HTML 的相关知识

语义化
  • HTML中的元素属性属性值都拥有某些含义
  • 开发者应当遵循语义来编写HTML
    • 有序列表用ol;无序列表用ul
    • lang属性表示内容的语言
语义化的好处
  • 代码可读性
  • 可维护性
  • 搜索引擎优化
  • 提升无障碍性
谁在使用我们写的 HTML
  • 开发者 - 修改、维护页面
  • 浏览器 - 展示页面
  • 搜索引擎 - 提取关键词、排序
  • 屏幕阅读器 - 无障碍性,给盲人读页面内容
如何做到语义化
  • 了解每个标签和属性的含义
  • 思考什么标签最适合描述这个内容
  • 不使用可视化工具生成代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值