HTML to Pug Converter - Online Indented Template Syntax
Convert standard HTML into Pug (formerly Jade) syntax. Clean, indented output. For Node.js templating. Client‑side.
UD5 Toolkit
Test, configure & generate <datalist> combobox code in real-time
value|label = display label
·
# Group = optgroup
Free-form input with suggestions
✅ You can type anythingRestricted choice from list only
🔒 Must pick from the list
<datalist> element provides an autocomplete/combobox functionality for <input> elements. It contains a set of <option> elements that represent suggested values. Users can either pick from the suggestions or type their own custom value — unlike <select> which restricts input to predefined options only.
list attribute on the <input> to match the id of the <datalist>. Example: <input list="my-list"> and <datalist id="my-list">...</datalist>. Multiple inputs can share the same datalist by referencing the same id.
<div>-based dropdown. Chrome, Firefox, Safari, and Edge all render datalist dropdowns differently.
inputmode and autocomplete attributes.
value and label are specified on an <option> inside a datalist: the label is displayed in the dropdown, while the value is what gets inserted into the input when selected. This is great for scenarios like country codes: <option value="US" label="United States"> — users see "United States" but "US" fills the field.
<select> element instead, or implement JavaScript validation on the input that checks against the datalist options. You can listen for the input event and validate with querySelectorAll against the datalist's options.
input event on the <input> element. However, there's no built-in way to distinguish between a dropdown selection and manual typing. A workaround: compare the input's value against datalist option values using JavaScript. The change event fires when the input loses focus, which can also be useful for final value validation.
<optgroup label="Group Name"> inside a <datalist> to categorize options. This is supported in Chrome, Firefox, Safari, and Edge. Group labels appear as non-selectable headers in the dropdown, helping organize long lists. Use the format # Group Name in our editor above to create optgroups.
autocomplete="off" prevents the browser's own autofill/suggestion overlay from conflicting with the datalist dropdown. Without it, some browsers may show both their native autocomplete popup and the datalist suggestions simultaneously, creating a confusing UX. Test in your target browsers.
<datalist> is supported in all modern browsers: Chrome 20+, Firefox 4+, Safari 12.1+, Edge 12+, and Opera 9.5+. Internet Explorer 10+ has partial support (dropdown may behave differently). Global browser support exceeds 97%. For legacy browsers, the input degrades gracefully — users can still type freely, they just won't see suggestions.
Convert standard HTML into Pug (formerly Jade) syntax. Clean, indented output. For Node.js templating. Client‑side.
Configure how your PWA launches: focus existing or create new. Test with the launch_handler manifest field.
Build a horizontal scroll‑snap container with configurable snap‑type and alignment. Perfect for image galleries.
Compare all CSS easing presets side by side on a bouncing ball. See which curve fits your UI animation.
Query the permission state of camera, microphone, geolocation, and more. See the response and learn the API.
Process audio faster than real‑time with OfflineAudioContext. Apply filters and export the result. Dev tool.
Paste regular HTML and instantly get valid React JSX with proper self‑closing tags and className attributes.
Scroll a container and see how sticky elements behave. Adjust top, bottom, and scroll margins. Copy the code.
Test the experimental Translation API to translate text between languages directly in the browser, without cloud calls. Check support and copy the JavaScript starter.
Toggle scrollbar‑gutter: stable to reserve space for the scrollbar and avoid content jumps. Visual demo with two columns.
Acquire and release locks across tabs. Prevent race conditions in IndexedDB or localStorage. Visual queue and lock state.
Register a periodic background sync to fetch fresh data even when the tab is closed. Understand the API and limits.
Test the Fullscreen API: request fullscreen on a colored div, detect changes, and copy the JavaScript boilerplate.
Test the new HTML popover attribute for creating accessible tooltips, menus, and dialogs without JavaScript. Copy code snippets.
See the View Transitions API in action. Cross‑fade and morph between two states. Copy the JavaScript starter code.
Build a complex mailto: link with to, cc, bcc, subject, and body. Get the HTML anchor tag. Local.
Paste HTML and instantly remove all tags, leaving only the text content. Optional keep line breaks. Quick cleaning.
Type raw HTML and see the escaped version, then see how it renders when unescaped. Understand encoding better.
Create a customizable scrolling marquee banner. Copy the HTML and CSS. For retro web projects or fun.
Paste CSV and get a beautiful HTML table with sortable headers (optional). Copy the full HTML/CSS snippet. Local.
Write or paste an HTML snippet and generate a PDF using the browser's print engine. Customize page size and margins.
Paste an HTML `<table>` snippet and instantly get a clean Markdown table. Supports colspan and alignment hints. Local.
Paste lines of text and automatically convert to an HTML ordered list with correct numbering and indentation.
Reduce your HTML file size by stripping whitespace, comments, and optional closing tags. Secure browser‑based.
Paste multiple HTML snippets (header, footer) and a main content, then combine them into a single preview. Static site helper.
Find safe mixing ratios for the classic elephant toothpaste demonstration. Volume adjustments for different container sizes.
Strip HTML tags and convert web content to plain Markdown. Preserve headings, lists, and links. Perfect for content migration. All processing in browser.
Write or paste HTML, CSS, and JavaScript and instantly see the rendered output in a sandboxed iframe. A handy frontend prototyping tool.
Write Markdown and see the formatted HTML preview in real time. Syntax highlighting and GitHub-flavored Markdown support. No upload, fully local.
Tidy up messy HTML code with our online formatter and beautifier. Indent and clean your markup, preview the output instantly. No data is uploaded, everything runs in your browser.