HTML Tips (转)

HTML Tips - Marko Denic - Web Developer

https://markodenic.com/html-tips/?continueFlag=2f26a57d963372388f360a59d96a9b25&utm_source=pocket_saves

/img/html-1-e1613893702690.png

  1. In this article, I will share with you some very useful HTML tips. Enjoy!

    • Post will be updated regularly with new tips!

But first, what is HTML?

Hypertext Markup Language (HTML) is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScript.

Let’s start!

1. The loading=lazy attribute

Performance tip. You can use the loading=lazy attribute to defer the loading of the image until the user scrolls to them.

1
2
3
4
5
6
7
8
9
10
11
12

<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>

3. Ordered lists start attribute.

Use the start attribute to change the starting point for your ordered lists.

img/start.png

Start Attribute

4. The meter element

  1. You can use the <meter> element to display quantities. No JavaScript/CSS needed.
1
2
3
4
5
6
7
8
<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
9
10
11
12
13
14
15
<div class="wrapper">
<h1>
Native HTML Search
</h1>

<input list="items">

<datalist id="items">
<option value="Marko Denic">
<option value="FreeCodeCamp">
<option value="FreeCodeTools">
<option value="Web Development">
<option value="Web Developer">
</datalist>
</div>

6. Fieldset Element

You can use the <fieldset> element to group several controls as well as labels (<label>) within a web form.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<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>

7. Window.opener

Pages opened with target="_blank" allow the new page to access the original’s window.opener. This can have security and performance implications. Include rel="noopener" or rel="noreferrer" to prevent this.

1
2
3
4

<a href="https://markodenic.com/" target="_blank" rel="noopener">
Marko's website
</a>

8. Base Element

  1. If you want to open all links in the document in a new tab, you can use <base> element:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<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>

This link will be opened in a new tab:

9. Favicon cache busting

To refresh your website’s favicon you can force browsers to download a new version by adding ?v=2 to the filename.

This is especially helpful in production to make sure the users get the new version.

10. The spellcheck attribute

Use the spellcheck attribute to define whether the element may be checked for spelling errors.

11. Native HTML sliders

You can use <input type="range"> to create sliders.

12. HTML Accordion

You can use the details element to create a native HTML accordion.

13. mark tag

You can use the <mark> tag to highlight text.

14. download attribute

You can use the download attribute in your links to download the file instead of navigating to it.

15. Performance tip

Use the .webp image format to make images smaller and boost the performance of your website.

1
2
3
4
5
6
7
8
9
10
11

<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>

16. Video thumbnail

Use the poster attribute to specify an image to be shown while the video is downloading, or until the user hits the play button.

17. input type="search"

Use the type="search" for your search inputs and you get the “clear” button for free.

18. pre tag

Use the <pre> tag to present preformatted text exactly as written in the HTML file:

To be continued…