Foundation - Custom Controls


Custom controls like date pickers, switches or sliders require some attention to access it. Help text or custom inputs with labels, requires aria-labelledby and aria-describedby attributes added to them. This will help the screen readers to describe the control.


The following example demonstrates the use of custom controls in Foundation.

      <title>Form Custom Controls</title>
      <link rel="stylesheet" href="" integrity="sha256-1mcRjtAxlSjp6XJBgrBeeCORfBp/ppyX4tsvpQVCcpA= sha384-b5S5X654rX3Wo6z5/hnQ4GBmKuIJKMPwrJXn52ypjztlnDK2w9+9hSMBz/asy9Gw sha512-M1VveR2JGzpgWHb0elGqPTltHK3xbvu3Brgjfg4cg5ZNtyyApxw/45yHYsZ/rCVbfoO5MSZxB241wWq642jLtA==" crossorigin="anonymous">

      <!-- Compressed JavaScript -->
      <script src=""></script>
      <script src="" integrity="sha256-WUKHnLrIrx8dew//IpSEmPN/NT3DGAEmIePQYIEJLLs= sha384-53StQWuVbn6figscdDC3xV00aYCPEz3srBdV/QGSXw3f19og3Tq2wTRe0vJqRTEO sha512-X9O+2f1ty1rzBJOC8AXBnuNUdyJg0m8xMKmbt9I3Vu/UOWmSg5zG+dtnje4wAZrKtkopz/PEDClHZ1LXx5IeOw==" crossorigin="anonymous"></script>


         <label id = "rateLabel">Rate Yourself</label>

         <div class = "slider" aria-labelledby = "rateLabel" aria-describedby = "rateHelpText"
            data-slider data-initial-start = '80' data-end = '100'>

            <span class = "slider-handle" data-slider-handle role = "slider" tabindex = "1"></span>
            <span class = "slider-fill" data-slider-fill></span>
            <input type = "hidden">

         <p id = "rateHelpText">how good are you at problem solving?</p>

         $(document).ready(function() {


Let us carry out the following steps to see how the above given code works −

  • Save the above given html code form_custom_controls.html file.

  • Open this HTML file in a browser, an output is displayed as shown below.