HTML Tips

6/30/2021 HTML

# HTML Tips

# 什么是 HTML?

超文本标记语言 (HTML) 是设计用于在 Web 浏览器中显示的文档的标准标记语言。 它可以借助级联样式表 (CSS) 等技术和 JavaScript 等脚本语言来辅助。

# 1. loading=lazy 属性

性能提示。您可以使用该loading=lazy属性来推迟图像的加载,直到用户滚动到它们为止。

<img src='image.jpg' loading='lazy' alt='Alternative Text'>  
1

# 2. 电子邮件、电话和短信链接:

<a href="mailto:{email}?subject={subject}&body={content}">
  Send us an email
</a>

<a href="tel:{phone}">
  Call us
</a>

<a href="sms:{phone}?body={content}">
  Send us a message
</a>           
1
2
3
4
5
6
7
8
9
10
11

# 3. 有序列表start属性。

使用该start属性更改有序列表的起点。

# 4. meter 元素

您可以使用该<meter>元素来显示数量。不需要 JavaScript/CSS。

HTML:

<label for="value1">Low</label>
<meter id="value1" min="0" max="100" low="30" high="75" optimum="80" value="25"></meter>

<label for="value2">Medium</label>
<meter id="value2" min="0" max="100" low="30" high="75" optimum="80" value="50"></meter>

<label for="value3">High</label>
<meter id="value3" min="0" max="100" low="30" high="75" optimum="80" value="80"></meter>
1
2
3
4
5
6
7
8

CSS:

body {
  padding: 40px 20px;
}

label {
  display: block;
  margin-top: 15px;
}

meter {
  width: 300px;
  height: 20px;
}
1
2
3
4
5
6
7
8
9
10
11
12
13

View:

# 5. HTML 原生搜索

HTML:

<div class="wrapper">
  <h1>
    Native HTML Search
  </h1>
  
  <input list="items">
  
  <datalist id="items">
    <option value="Vue">
    <option value="React">
    <option value="Angular">
    <option value="Flutter">
    <option value="React Native">
  </datalist>
</div>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

Less:

.wrapper {
  padding-top: 30px;
  text-align: center;
  h1 {
    font-weight: normal;
  }
  input {
    padding: 10px;
    font-size: 1.2em;
  }
}
1
2
3
4
5
6
7
8
9
10
11

View:

# 6. 字段集元素

您可以使用该<fieldset>元素对<label>Web 表单中的多个控件和标签 ( )进行分组。

HTML:

<form>
  <fieldset>
    <legend>Choose your favorite language</legend>

    <input type="radio" id="javascript" name="language">
    <label for="javascript">JavaScript</label><br/>

    <input type="radio" id="python" name="language">
    <label for="python">Python</label><br/>

    <input type="radio" id="java" name="language">
    <label for="java">Java</label>
  </fieldset>
</form>
1
2
3
4
5
6
7
8
9
10
11
12
13
14

CSS:

@import url('https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@600&display=swap');

form {
  font-family: 'Roboto Mono', monospace;
}
1
2
3
4
5

View:

# 7. Window.opener

打开target="_blank"的页面允许新页面访问原始页面window.opener。这可能会对安全和性能产生影响。 包括rel="noopener"rel="noreferrer"防止这种情况发生。

<a href="https://uzykj.com/" target="_blank" rel="noopener">
	uzykj's website
</a> 
1
2
3

# 8. 基本元素

如果要在新选项卡中打开文档中的所有链接,可以使用

element:

HTML:

<head>
   <base target="_blank">
</head>
<!-- This link will open in a new tab. -->
<div class="wrapper">
  This link will be opened in a new tab: &nbsp;
  <a href="https://freecodetools.org/">
    Free Code Tools
  </a>

  <p>
    Read more: <br><a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base">
    MDN Documentation
    </a>
  </p>
</div>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

CSS:

.wrapper {
  text-align: center;
  padding: 0 15px;
  background-color: #173446;
  color: white;
  display: flex;
  flex-direction: column;
  height: 100vh;
  justify-content: center;
  align-items: center;
  font-size: 1.4em;
}

a {
  color: #999;
  position: relative;
}

a:after {
  background-color: #999;
  bottom: 0;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  transform: scaleX(0);
  transition: all .3s ease-in-out 0s;
  visibility: hidden;
  width: 100%;
}

a:hover:after {
  transform: scaleX(1);
  visibility: visible;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35

View:

# 9. Favicon 缓存破坏

要刷新您网站的图标,您可以通过添加?v=2到文件名来强制浏览器下载新版本。

这在生产中特别有用,可以确保用户获得新版本。

<link rel="icon" href="/favicon.ico?v=2" />           
1

# 10.spellcheck属性

使用该spellcheck属性来定义是否可以检查元素的拼写错误。

HTML:

<label for="input1">spellcheck="true"</label>
<input type="text" id="input1" spellcheck="true">

<label for="input2">spellcheck="false"</label>
<input type="text" id="input2" spellcheck="false">
1
2
3
4
5

CSS:

body {
  padding: 20px;
}

label {
  display: block;
  margin-bottom: 5px;
}

input {
  width: 300px;
  margin-bottom: 15px;
}
1
2
3
4
5
6
7
8
9
10
11
12
13

View:

# 11. 原生 HTML 滑块

您可以使用它 <input type="range"> 来创建滑块。

HTML:

<label for="volume">Volume: </label>
<input type="range" id="volume" name="volume" min="0" max="20">

<label for="result">Your choice: </label>
<input type="number" id="result" name="result">
1
2
3
4
5

CSS:

body {
  padding: 50px 20px;
}

label {
  display: block;
}

input[type=range] {
  background: red;
  width: 200px;
  margin-bottom: 20px;
}
1
2
3
4
5
6
7
8
9
10
11
12
13

JS:

const volume = document.getElementById('volume');
const result = document.getElementById('result');
result.value = volume.value;

volume.addEventListener('change', () => {
  result.value = volume.value;
});
1
2
3
4
5
6
7

View:

# 12. HTML 手风琴

可以使用该details元素来创建本机 HTML 手风琴。

HTML:

<div class="wrapper">
  <details>
    <summary>
      Click me to see more details
    </summary>

    <p>
      Lorem ipsum dolor sit amet consectetur adipisicing elit. Ut eum perferendis eius. Adipisci velit et similique earum quas illo odio rerum optio, quis, expedita assumenda enim dicta aliquam porro maxime minima sed a ullam, aspernatur corporis.
    </p>
  </details>
</div>
1
2
3
4
5
6
7
8
9
10
11

CSS:

.wrapper {
  padding: 30px;
  display: flex;
  justify-content: center;
}

details {
  width: 100%;
  max-width: 500px;
}

summary {
  background: #f2f2f2;
  cursor: pointer;
  padding: 15px;
}

p {
  padding: 15px;
  margin: 0;
  background: #f2f2f2;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

View:

# 13.mark标签

您可以使用<mark>标签来突出显示文本。

# 14.下载属性

您可以使用download链接中的属性来下载文件,而不是导航到该文件。

<a href='path/to/file' download>
  Download
</a>  
1
2
3

# 15. 性能提示

使用.webp图像格式缩小图像并提高网站的性能。

<picture>
  <!-- load .webp image if supported -->
  <source srcset="logo.webp" type="image/webp">

  <!-- 
	Fallback if `.webp` images or <picture> tag 
	not supported by the browser.
  -->
  <img src="logo.png" alt="logo">
</picture> 
1
2
3
4
5
6
7
8
9
10

16.视频缩略图 使用该poster属性指定要在视频下载时或在用户点击播放按钮之前显示的图像。

<video poster="path/to/image">           
1

17.输入 type="search"type="search"用于您的搜索输入,您将免费获得“清除”按钮。


收录时间: 2021-06-30

最后更新时间: 10/11/2021, 3:48:44 PM