DEV Community

Cover image for 7 Lesser-Known HTML Attributes to Enhance User Experience
Zachary Lee
Zachary Lee

Posted on • Originally published at webdeveloper.beehiiv.com on

7 Lesser-Known HTML Attributes to Enhance User Experience

HTML is a powerful language for creating web pages, and while most developers are familiar with commonly used HTML attributes, there are several lesser-known attributes that can provide additional functionality and enhance the user experience.

1. The enterkeyhint Attribute for Virtual Keyboards

When designing web forms for mobile devices, it’s important to consider the virtual keyboards that users interact with. The enterkeyhint attribute is a global attribute that can be applied to form controls or elements with the contenteditable attribute set to true. It assists users by providing hints to the virtual keyboard about the intended action associated with the "Enter" key. This attribute accepts values such as enter, done, go, next, previous, search, and send, allowing you to customize the hint based on the specific context of your application.

<input type="text" enterkeyhint="done">
Enter fullscreen mode Exit fullscreen mode

2. Attributes for Custom Ordered Lists

While working with ordered lists <ol>, you can utilize several lesser-known attributes to customize the behavior of the numbering. These attributes include:

  • The reversed attribute: It allows you to number the list items in reverse order, from high to low instead of the default low to high.

  • The start attribute: It defines the number from which the list should start.

  • The type attribute: It specifies whether to use numbers, letters, or Roman numerals for the list items.

  • The value attribute: It enables you to set a custom number for a specific list item.

<ol reversed>
  <li>List item...</li>
  <li>List item...</li>
  <li>List item...</li>
</ol>

<ol reversed start="20" type="1">
  <li>Typee: A Peep at Polynesian Life (1846)</li>
  <li>Omoo: A Narrative of Adventures in the South Seas (1847)</li>
  <li>Mardi: and aVoyage Thither (1849)</li>
  <li>Redburn: His First Voyage (1849)</li>
  <li value="100">White-Jacket; or, The World in a Man-of-War (1850)</li>
  <li>Moby-Dick; or, The Whale (1851)</li>
  <li>Pierre; or, The Ambiguities (1852)</li>
  <li>Isle of the Cross (1853 unpublished, and now lost)</li>
</ol>
Enter fullscreen mode Exit fullscreen mode

3. The decoding Attribute for <img> Element

The decoding attribute allows you to provide a hint to the browser about how an image should be decoded. This attribute can be added to an <img> element and accepts three values: sync, async, and auto.

  • sync: Decode the image synchronously, which is the default behavior.

  • async: Decode the image asynchronously to avoid delaying the presentation of other content.

  • auto: Let the browser use its default decoding method.

<img src="/images/example.png" alt="Example" decoding="async">
Enter fullscreen mode Exit fullscreen mode

By specifying the appropriate decoding behavior, you can optimize the loading and rendering of images on your web page.

4. The loading Attribute for <iframe> Element

Similar to lazy loading images, the loading attribute can be applied to <iframe> elements to control when the iframe's content should be loaded. By setting the loading attribute to lazy, you can defer the loading of the iframe until it's about to enter the viewport. This helps improve performance by reducing the initial page load time.

<iframe src="/page.html" width="300" height="250" loading="lazy"></iframe>
Enter fullscreen mode Exit fullscreen mode

5. The crossorigin Attribute for Cross-Origin Resource Sharing (CORS)

When working with elements like <img>, <audio>, <video>, <script>, and <link>, you may come across the need for cross-origin resource sharing (CORS). The crossorigin attribute allows you to specify how the resource should be fetched in terms of CORS.

<img src="https://example.com/image.jpg" crossorigin="anonymous" alt="Example Image">
Enter fullscreen mode Exit fullscreen mode

The attribute accepts two values: anonymous and use-credentials. Setting it to anonymous indicates that the resource should be fetched without including user credentials, while use-credentials indicates that the user credentials should be included.

6. The disablepictureinpicture Attribute for <video> Element

The disablepictureinpicture attribute can be applied to the <video> element to disable the Picture-in-Picture (PiP) feature. PiP allows videos to be displayed in a floating window, but if you want to prevent this behavior, you can simply add the attribute to the video element.

<video src="example.mp4" disablepictureinpicture controls></video>
Enter fullscreen mode Exit fullscreen mode

7. The integrity Attribute for Scripts

To ensure that external scripts haven’t been tampered with, you can make use of the integrity attribute. This attribute allows you to provide a cryptographic hash value that the browser can use to verify the integrity of the script file before executing it.

<script src="script.js" integrity="sha256-Kx70Z9jzvYF0Eex8oO7w08=" crossorigin="anonymous"></script>
Enter fullscreen mode Exit fullscreen mode

By including the integrity attribute with the appropriate hash value, you can add an extra layer of security to ensure the script's authenticity.

Conclusion

In this article, we have explored a collection of lesser-known HTML attributes that can enhance your web development projects. From improving user interactions to optimizing resource loading, these attributes provide valuable functionalities that may not be widely known or utilized.

If you find this helpful, please consider subscribing_for more useful articles and tools about web development. Thanks for reading!

Top comments (0)