HTML - dirname Attribute



HTML dirname attribute is used to enable the submission of the directionality of the element.

If it is present, the form control will submit with two name/value pairs. The first one will be the name and value, and the second will be the value of dirname as the name with a value of ltr(left to right) or rtl(right to left) sent by the browser when the form is submitted. This is particularly useful for languages that have different text directions, like English (left-to-right) and Arabic (right-to-left).

The dirname attribute only works with ‘text’ and ‘search’ type input elements and with <textarea> elements.

Syntax

<tag dirname = "value"></tag>

Value of dirname can be ltr, rtl or name of hidden field that capture directionality.

Applies On

Below listed elements allow using of the HTML dirname attribute.

Element Description
<input> HTML <input> tag is used to specify the input field.
<textarea> HTML <textarea> tag is used to represent a multiline plain-text editing control.

Example of HTML dirname attribute

Bellow examples will illustrate the HTML dirname attribute, where and how we should use this attribute!

Dirname with text input

In the following example, we are going to use the dirname attribute within the input type=text element.

<!DOCTYPE html>
<html lang="en">
<head>
   <title>HTML 'dirname' Attribute</title>
   <style>
      form {
         width: 200px;
         padding: 20px;
         background-color: aquamarine;
         border-radius: 10px;
      }

      label {
         margin: 5px 5px;
      }

      input {
         margin: 5px 5px;
         padding: 8px;
      }

      button {
         margin: 5px 5px;
         padding: 8px;
         cursor: pointer;
         background-color: white;
         border: 1px solid white;
         width: 100px;
         border-radius: 5px;
      }
   </style>
</head>
<body>
   <!--HTML 'dirname' attribute-->
   <h3>Example of the HTML 'dirname' attribute</h3>
   <h1>User form</h1>
   <form>
      <label for="">Name</label>
      <br>
      <input type="text" dirname="ltr" name='uname'>
      <button>Submit</button>
   </form>
</body>
</html>

Dirname as name of hidden field

Considering the another scenario, where we are going to use the dirname attribute with the input type=search. Here dirname="search.dir" adds a hidden field with the name search.dir that captures the directionality (left-to-right or right-to-left) of the input text and sends to server.

<!DOCTYPE html>
<html lang="en">
<head>
   <title>HTML 'dirname' Attribute</title>
   <style>
      form {
         background-color: aliceblue;
         width: 50%;
         margin: 50px auto;
         display: grid;
         place-items: center;
         border-radius: 10px;
      }

      input {
         padding: 15px;
         width: 500px;
      }

      button {
         width: 200px;
         padding: 10px;
         margin: 15px;
         background-color: azure;
         border: 1px solid rgb(81, 76, 76);
         cursor: pointer;
         font-size: 18px;
      }
   </style>
</head>
<body>
   <!--HTML 'dirname' attribute-->
   <h3>Example of the HTML 'dirname' attribute</h3>
   <form>
      <h1>Search Bar</h1>
      <input type="search" 
         dirname="search.dir" 
         name='search' 
         placeholder="Search...">
      <button>Search</button>
   </form>
</body>
</html>

Dirname attribute with textarea

Let's look at the following example, where we are going to use the dirname attribute with the textarea element.

<!DOCTYPE html>
<html lang="en">
<head>
   <title>HTML 'dirname' Attribute</title>
   <style>
      form {
         background-color: rgb(128, 241, 241);
         padding: 10px;
         width: 33%;
         border-radius: 10px;
      }

      textarea {
         padding: 8px 8px;
         width: 70%;
      }

      p {
         font-size: 20px;
      }

      button {
         padding: 10px;
         width: 100px;
         background-color: white;
         color: rgb(16, 16, 16);
         border: 2px solid rgb(32, 254, 254);
         cursor: pointer;
         font-size: 16px;
      }
   </style>
</head>
<body>
   <!--HTML 'dirname' attribute-->
   <h3>Example of the HTML 'dirname' attribute</h3>
   <form>
      <p>Feedback form :-</p>
      <textarea name="feedback" 
         dirname="feedback.dir" 
         cols="30" 
         rows="5" 
         placeholder="Write your feedback...">
         </textarea>
      <br>
      <button>Submit</button>
   </form>
</body>
</html>

Supported Browsers

Attribute Chrome Edge Firefox Safari Opera
dirname Yes No No Yes Yes
html_attributes_reference.htm
Advertisements