dioxus_html/elements.rs
1// Organized in the same order as
2// https://developer.mozilla.org/en-US/docs/Web/HTML/Element
3//
4// Does not include obsolete elements.
5//
6// This namespace represents a collection of modern HTML-5 compatible elements.
7//
8// This list does not include obsolete, deprecated, experimental, or poorly supported elements.
9
10// Re-export the element-vocabulary root so that any `use dioxus_html::elements::*` (the common
11// way to bring elements into scope) also brings `html` into scope. `rsx!` lowers a bare element
12// like `div` to the associated const `html::div`, which needs the root type reachable here.
13pub use crate::html;
14
15dioxus_html_internal_macro::define_elements! {
16 core = dioxus_core,
17 html = crate,
18 hot_reload_context = true;
19
20 // Document metadata
21
22 /// Build a
23 /// [`<base>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base)
24 /// element.
25 ///
26 base {
27 href,
28 target,
29 }
30
31 /// Build a
32 /// [`<head>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/head)
33 /// element.
34 head {}
35
36 /// Build a
37 /// [`<link>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/link)
38 /// element.
39 link {
40 // as: Mime,
41 crossorigin,
42 href,
43 hreflang,
44 media, // FIXME media query
45 rel,
46 sizes, // FIXME
47 title, // FIXME
48 #[attr(name = "type")]
49 r#type,
50 integrity,
51 disabled,
52 referrerpolicy,
53 fetchpriority,
54 blocking,
55 #[attr(name = "as")]
56 r#as,
57 }
58
59 /// Build a
60 /// [`<meta>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta)
61 /// element.
62 meta {
63 charset, // FIXME IANA standard names
64 content,
65 #[attr(name = "http-equiv")]
66 http_equiv,
67 name,
68 property,
69 }
70
71 /// Build a
72 /// [`<style>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/style)
73 /// element.
74 style {
75 #[attr(name = "type")]
76 r#type,
77 media, // FIXME media query
78 nonce,
79 title, // FIXME
80 }
81
82 /// Build a
83 /// [`<title>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/title)
84 /// element.
85 title {}
86
87 // Sectioning root
88
89 /// Build a
90 /// [`<body>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/body)
91 /// element.
92 body {}
93
94 // ------------------
95 // Content sectioning
96 // ------------------
97
98 /// Build a
99 /// [`<address>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/address)
100 /// element.
101 address {}
102
103 /// Build a
104 /// [`<article>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/article)
105 /// element.
106 article {}
107
108 /// Build a
109 /// [`<aside>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/aside)
110 /// element.
111 aside {}
112
113 /// Build a
114 /// [`<footer>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/footer)
115 /// element.
116 footer {}
117
118 /// Build a
119 /// [`<header>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/header)
120 /// element.
121 header {}
122
123 /// Build a
124 /// [`<hgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/hgroup)
125 /// element.
126 hgroup {}
127
128 /// Build a
129 /// [`<h1>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h1)
130 /// element.
131 ///
132 /// # About
133 /// - The HTML `<h1>` element is found within the `<body>` tag.
134 /// - Headings can range from `<h1>` to `<h6>`.
135 /// - The most important heading is `<h1>` and the least important heading is `<h6>`.
136 /// - The `<h1>` heading is the first heading in the document.
137 /// - The `<h1>` heading is usually a large bolded font.
138 h1 {}
139
140 /// Build a
141 /// [`<h2>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h2)
142 /// element.
143 ///
144 /// # About
145 /// - The HTML `<h2>` element is found within the `<body>` tag.
146 /// - Headings can range from `<h1>` to `<h6>`.
147 /// - The most important heading is `<h1>` and the least important heading is `<h6>`.
148 /// - The `<h2>` heading is the second heading in the document.
149 /// - The `<h2>` heading is usually a large bolded font.
150 h2 {}
151
152 /// Build a
153 /// [`<h3>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h3)
154 /// element.
155 ///
156 /// # About
157 /// - The HTML `<h1>` element is found within the `<body>` tag.
158 /// - Headings can range from `<h1>` to `<h6>`.
159 /// - The most important heading is `<h1>` and the least important heading is `<h6>`.
160 /// - The `<h1>` heading is the first heading in the document.
161 /// - The `<h1>` heading is usually a large bolded font.
162 h3 {}
163
164 /// Build a
165 /// [`<h4>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h4)
166 /// element.
167 h4 {}
168
169 /// Build a
170 /// [`<h5>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h5)
171 /// element.
172 h5 {}
173
174 /// Build a
175 /// [`<h6>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/h6)
176 /// element.
177 h6 {}
178
179 /// Build a
180 /// [`<main>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/main)
181 /// element.
182 main {}
183
184 /// Build a
185 /// [`<nav>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/nav)
186 /// element.
187 nav {}
188
189 /// Build a
190 /// [`<section>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/section)
191 /// element.
192 section {}
193
194 // Text content
195
196 /// Build a
197 /// [`<blockquote>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/blockquote)
198 /// element.
199 blockquote {
200 cite,
201 }
202 /// Build a
203 /// [`<dd>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dd)
204 /// element.
205 dd {}
206
207 /// Build a
208 /// [`<div>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/div)
209 /// element.
210 ///
211 /// Part of the HTML namespace. Only works in HTML-compatible renderers
212 ///
213 /// ## Definition and Usage
214 /// - The `<div>` tag defines a division or a section in an HTML document.
215 /// - The `<div>` tag is used as a container for HTML elements - which is then styled with CSS or manipulated with JavaScript.
216 /// - The `<div>` tag is easily styled by using the class or id attribute.
217 /// - Any sort of content can be put inside the `<div>` tag!
218 ///
219 /// Note: By default, browsers always place a line break before and after the `<div>` element.
220 ///
221 /// ## References:
222 /// - <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/div>
223 /// - <https://www.w3schools.com/tags/tag_div.asp>
224 div {}
225
226 /// Build a
227 /// [`<dl>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dl)
228 /// element.
229 dl {}
230
231 /// Build a
232 /// [`<dt>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dt)
233 /// element.
234 dt {}
235
236 /// Build a
237 /// [`<figcaption>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/figcaption)
238 /// element.
239 figcaption {}
240
241 /// Build a
242 /// [`<figure>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/figure)
243 /// element.
244 figure {}
245
246 /// Build a
247 /// [`<hr>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/hr)
248 /// element.
249 hr {}
250
251 /// Build a
252 /// [`<li>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/li)
253 /// element.
254 li {
255 value,
256 }
257
258 /// Build a
259 /// [`<ol>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol)
260 /// element.
261 ol {
262 reversed,
263 start,
264 #[attr(name = "type")]
265 r#type,
266 }
267
268 /// Build a
269 /// [`<p>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/p)
270 /// element.
271 p {}
272
273 /// Build a
274 /// [`<pre>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/pre)
275 /// element.
276 pre {}
277
278 /// Build a
279 /// [`<ul>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ul)
280 /// element.
281 ul {}
282
283
284 // Inline text semantics
285
286 /// Build a
287 /// [`<a>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a)
288 /// element.
289 a {
290 download,
291 href,
292 hreflang,
293 target,
294 #[attr(name = "type")]
295 r#type,
296 // ping: SpacedList<Uri>,
297 // rel: SpacedList<LinkType>,
298 ping,
299 rel,
300 }
301
302 /// Build a
303 /// [`<abbr>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/abbr)
304 /// element.
305 abbr {}
306
307 /// Build a
308 /// [`<b>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/b)
309 /// element.
310 b {}
311
312 /// Build a
313 /// [`<bdi>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/bdi)
314 /// element.
315 bdi {}
316
317 /// Build a
318 /// [`<bdo>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/bdo)
319 /// element.
320 bdo {}
321
322 /// Build a
323 /// [`<br>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/br)
324 /// element.
325 br {}
326
327 /// Build a
328 /// [`<cite>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/cite)
329 /// element.
330 cite {}
331
332 /// Build a
333 /// [`<code>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/code)
334 /// element.
335 code {
336 language,
337 }
338
339 /// Build a
340 /// [`<data>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/data)
341 /// element.
342 data {
343 value,
344 }
345
346 /// Build a
347 /// [`<dfn>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dfn)
348 /// element.
349 dfn {}
350
351 /// Build a
352 /// [`<em>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/em)
353 /// element.
354 em {}
355
356 /// Build a
357 /// [`<i>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/i)
358 /// element.
359 i {}
360
361 /// Build a
362 /// [`<kbd>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/kbd)
363 /// element.
364 kbd {}
365
366 /// Build a
367 /// [`<mark>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/mark)
368 /// element.
369 mark {}
370
371 /// Build a
372 /// [`<menu>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/menu)
373 /// element.
374 menu {}
375
376 /// Build a
377 /// [`<q>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/q)
378 /// element.
379 q {
380 cite,
381 }
382
383
384 /// Build a
385 /// [`<rp>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/rp)
386 /// element.
387 rp {}
388
389
390 /// Build a
391 /// [`<rt>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/rt)
392 /// element.
393 rt {}
394
395
396 /// Build a
397 /// [`<ruby>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ruby)
398 /// element.
399 ruby {}
400
401 /// Build a
402 /// [`<s>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/s)
403 /// element.
404 s {}
405
406 /// Build a
407 /// [`<samp>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/samp)
408 /// element.
409 samp {}
410
411 /// Build a
412 /// [`<small>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/small)
413 /// element.
414 small {}
415
416 /// Build a
417 /// [`<span>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/span)
418 /// element.
419 span {}
420
421 /// Build a
422 /// [`<strong>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/strong)
423 /// element.
424 strong {}
425
426 /// Build a
427 /// [`<sub>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/sub)
428 /// element.
429 sub {}
430
431 /// Build a
432 /// [`<sup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/sup)
433 /// element.
434 sup {}
435
436 /// Build a
437 /// [`<time>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/time)
438 /// element.
439 time {
440 datetime,
441 }
442
443 /// Build a
444 /// [`<u>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/u)
445 /// element.
446 u {}
447
448 /// Build a
449 /// [`<var>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/var)
450 /// element.
451 var {}
452
453 /// Build a
454 /// [`<wbr>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/wbr)
455 /// element.
456 wbr {}
457
458
459 // Image and multimedia
460
461 /// Build a
462 /// [`<area>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/area)
463 /// element.
464 area {
465 alt,
466 coords, // TODO could perhaps be validated
467 download,
468 href,
469 hreflang,
470 shape,
471 target,
472 // ping: SpacedList<Uri>,
473 // rel: SpacedSet<LinkType>,
474 }
475
476 /// Build a
477 /// [`<audio>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio)
478 /// element.
479 audio {
480 autoplay,
481 controls,
482 crossorigin,
483 muted,
484 preload,
485 src,
486 #[attr(name = "loop")]
487 r#loop,
488 }
489
490 /// Build a
491 /// [`<img>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img)
492 /// element.
493 img {
494 alt,
495 crossorigin,
496 decoding,
497 height,
498 ismap,
499 loading,
500 src,
501 srcset, // FIXME this is much more complicated
502 usemap, // FIXME should be a fragment starting with '#'
503 width,
504 referrerpolicy,
505 sizes, // FIXME
506 elementtiming,
507 fetchpriority,
508 attributionsrc,
509 }
510
511 /// Build a
512 /// [`<map>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/map)
513 /// element.
514 map {
515 name,
516 }
517
518 /// Build a
519 /// [`<track>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/track)
520 /// element.
521 track {
522 default,
523 kind,
524 label,
525 src,
526 srclang,
527 }
528
529 /// Build a
530 /// [`<video>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/video)
531 /// element.
532 video {
533 autoplay,
534 controls,
535 crossorigin,
536 height,
537 #[attr(name = "loop")]
538 r#loop,
539 muted,
540 preload,
541 playsinline,
542 poster,
543 src,
544 width,
545 }
546
547
548 // Embedded content
549
550 /// Build a
551 /// [`<embed>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/embed)
552 /// element.
553 embed {
554 height,
555 src,
556 #[attr(name = "type")]
557 r#type,
558 width,
559 }
560
561 /// Build a
562 /// [`<iframe>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe)
563 /// element.
564 iframe {
565 allow,
566 allowfullscreen,
567 allowpaymentrequest,
568 height,
569 name,
570 referrerpolicy,
571 src,
572 srcdoc,
573 width,
574
575 #[attr(name = "marginWidth")]
576
577 margin_width,
578 align,
579 longdesc,
580
581 scrolling,
582 #[attr(name = "marginHeight")]
583 margin_height,
584 #[attr(name = "frameBorder")]
585 frame_border,
586 // sandbox: SpacedSet<Sandbox>,
587 }
588
589 /// Build a
590 /// [`<object>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/object)
591 /// element.
592 object {
593 data,
594 form,
595 height,
596 name,
597 #[attr(name = "type")]
598 r#type,
599 typemustmatch,
600 usemap, // TODO should be a fragment starting with '#'
601 width,
602 }
603
604 /// Build a
605 /// [`<param>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/param)
606 /// element.
607 param {
608 name,
609 value,
610 }
611
612 /// Build a
613 /// [`<picture>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/picture)
614 /// element.
615 picture {}
616
617 /// Build a
618 /// [`<source>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source)
619 /// element.
620 source {
621 src,
622 #[attr(name = "type")]
623 r#type,
624 srcset,
625 media,
626 sizes,
627 width,
628 height,
629 }
630
631
632 // Scripting
633
634 /// Build a
635 /// [`<canvas>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/canvas)
636 /// element.
637 canvas {
638 height,
639 width,
640 }
641
642 /// Build a
643 /// [`<noscript>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/noscript)
644 /// element.
645 noscript {}
646
647 /// Build a
648 /// [`<script>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script)
649 /// element.
650 ///
651 /// The script HTML element is used to embed executable code or data; this is typically used to embed or refer to
652 /// JavaScript code. The script element can also be used with other languages, such as WebGL's GLSL shader
653 /// programming language and JSON.
654 script {
655 /// Normal script elements pass minimal information to the window.onerror for scripts which do not pass the
656 /// standard CORS checks. To allow error logging for sites which use a separate domain for static media, use
657 /// this attribute. See CORS settings attributes for a more descriptive explanation of its valid arguments.
658 crossorigin,
659
660 /// This Boolean attribute is set to indicate to a browser that the script is meant to be executed after the
661 /// document has been parsed, but before firing DOMContentLoaded.
662 ///
663 /// Scripts with the defer attribute will prevent the DOMContentLoaded event from firing until the script has
664 /// loaded and finished evaluating.
665 ///
666 /// ----
667 /// ### Warning:
668 ///
669 /// This attribute must not be used if the src attribute is absent (i.e. for inline scripts), in this
670 /// case it would have no effect.
671 ///
672 /// ----
673 ///
674 /// The defer attribute has no effect on module scripts — they defer by default.
675 /// Scripts with the defer attribute will execute in the order in which they appear in the document.
676 ///
677 /// This attribute allows the elimination of parser-blocking JavaScript where the browser would have to load and
678 /// evaluate scripts before continuing to parse. async has a similar effect in this case.
679 defer,
680 integrity,
681 nomodule,
682 nonce,
683 src,
684 text,
685 fetchpriority,
686 referrerpolicy,
687
688 #[attr(name = "async")]
689
690 r#async,
691 #[attr(name = "type")]
692 r#type, // TODO could be an enum
693 #[attr(name = "script")]
694 r#script,
695 }
696
697
698 // Demarcating edits
699
700 /// Build a
701 /// [`<del>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/del)
702 /// element.
703 del {
704 cite,
705 datetime,
706 }
707
708 /// Build a
709 /// [`<ins>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ins)
710 /// element.
711 ins {
712 cite,
713 datetime,
714 }
715
716
717 // Table content
718
719 /// Build a
720 /// [`<caption>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/caption)
721 /// element.
722 caption {}
723
724 /// Build a
725 /// [`<col>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col)
726 /// element.
727 col {
728 span,
729 }
730
731 /// Build a
732 /// [`<colgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup)
733 /// element.
734 colgroup {
735 span,
736 }
737
738 /// Build a
739 /// [`<table>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/table)
740 /// element.
741 table {}
742
743 /// Build a
744 /// [`<tbody>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody)
745 /// element.
746 tbody {}
747
748 /// Build a
749 /// [`<td>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td)
750 /// element.
751 td {
752 colspan,
753 rowspan,
754 // headers: SpacedSet<Id>,
755 }
756
757 /// Build a
758 /// [`<tfoot>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tfoot)
759 /// element.
760 tfoot {}
761
762 /// Build a
763 /// [`<th>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th)
764 /// element.
765 th {
766 abbr,
767 colspan,
768 rowspan,
769 scope,
770 // headers: SpacedSet<Id>,
771 }
772
773 /// Build a
774 /// [`<thead>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/thead)
775 /// element.
776 thead {}
777
778 /// Build a
779 /// [`<tr>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tr)
780 /// element.
781 tr {}
782
783
784 // Forms
785
786 /// Build a
787 /// [`<button>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button)
788 /// element.
789 button {
790 autofocus,
791 disabled,
792 form,
793 formaction,
794 formenctype,
795 formmethod,
796 formnovalidate,
797 formtarget,
798 name,
799 popovertarget,
800 popovertargetaction,
801 value,
802 #[attr(name = "type")]
803 r#type,
804 }
805
806 /// Build a
807 /// [`<datalist>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/datalist)
808 /// element.
809 datalist {}
810
811 /// Build a
812 /// [`<fieldset>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/fieldset)
813 /// element.
814 fieldset {
815 disabled,
816 form,
817 name,
818 }
819
820 /// Build a
821 /// [`<form>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form)
822 /// element.
823 form {
824 // accept-charset: SpacedList<CharacterEncoding>,
825 action,
826 autocomplete,
827 enctype,
828 method,
829 name,
830 novalidate,
831 target,
832 }
833
834 /// Build a
835 /// [`<input>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)
836 /// element.
837 input {
838 accept,
839 alt,
840 autocomplete,
841 /// cf. <https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Global_attributes/autocorrect>
842 autocorrect,
843 autofocus,
844 capture,
845 checked,
846 #[attr(name = "webkitdirectory")]
847 directory,
848 disabled,
849 form,
850 formaction,
851 formenctype,
852 formmethod,
853 formnovalidate,
854 formtarget,
855 height,
856 initial_checked,
857 list,
858 max,
859 maxlength,
860 min,
861 minlength,
862 multiple,
863 name,
864 pattern,
865 popovertarget,
866 popovertargetaction,
867 placeholder,
868 readonly,
869 required,
870 size,
871 spellcheck,
872 src,
873 step,
874 tabindex,
875 width,
876
877 /// The type of input
878 ///
879 /// Here are the different input types you can use in HTML:
880 ///
881 /// - `button`
882 /// - `checkbox`
883 /// - `color`
884 /// - `date`
885 /// - `datetime-local`
886 /// - `email`
887 /// - `file`
888 /// - `hidden`
889 /// - `image`
890 /// - `month`
891 /// - `number`
892 /// - `password`
893 /// - `radio`
894 /// - `range`
895 /// - `reset`
896 /// - `search`
897 /// - `submit`
898 /// - `tel`
899 /// - `text`
900 /// - `time`
901 /// - `url`
902 /// - `week`
903
904 #[attr(name = "type")]
905
906 r#type,
907 // value: String,
908 #[attr(volatile)]
909 value,
910 initial_value,
911 }
912
913 /// Build a
914 /// [`<label>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/label)
915 /// element.
916 label {
917 form,
918 #[attr(name = "for")]
919 r#for,
920 }
921
922 /// Build a
923 /// [`<legend>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/legend)
924 /// element.
925 legend {}
926
927 /// Build a
928 /// [`<meter>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meter)
929 /// element.
930 meter {
931 value,
932 min,
933 max,
934 low,
935 high,
936 optimum,
937 form,
938 }
939
940 /// Build a
941 /// [`<optgroup>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/optgroup)
942 /// element.
943 optgroup {
944 disabled,
945 label,
946 }
947
948 /// Build a
949 /// [`<option>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/option)
950 /// element.
951 option {
952 disabled,
953 label,
954
955
956 value,
957
958 #[attr(volatile)]
959 selected,
960 initial_selected,
961 }
962
963 /// Build a
964 /// [`<output>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/output)
965 /// element.
966 output {
967 form,
968 name,
969 // r#for: SpacedSet<Id>,
970 }
971
972 /// Build a
973 /// [`<progress>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/progress)
974 /// element.
975 progress {
976 max,
977 value,
978 }
979
980 /// Build a
981 /// [`<select>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select)
982 /// element.
983 select {
984 // defined below
985 // value: String,
986 autocomplete,
987 autofocus,
988 disabled,
989 form,
990 multiple,
991 name,
992 required,
993 size,
994 #[attr(volatile)]
995 value,
996 }
997
998 /// Build a
999 /// [`<textarea>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/textarea)
1000 /// element.
1001 textarea {
1002 autocomplete,
1003 /// cf. <https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Global_attributes/autocorrect>
1004 autocorrect,
1005 autofocus,
1006 cols,
1007 disabled,
1008 form,
1009 maxlength,
1010 minlength,
1011 name,
1012 placeholder,
1013 readonly,
1014 required,
1015 rows,
1016 spellcheck,
1017 wrap,
1018 #[attr(volatile)]
1019 value,
1020
1021 initial_value,
1022 }
1023
1024
1025 // Interactive elements
1026
1027 /// Build a
1028 /// [`<details>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details)
1029 /// element.
1030 details {
1031 open,
1032 }
1033
1034 /// Build dialog
1035 /// [`<dialog>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/dialog)
1036 /// element.
1037 dialog {
1038 open,
1039 }
1040
1041 /// Build a
1042 /// [`<summary>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/summary)
1043 /// element.
1044 summary {}
1045
1046 // Web components
1047
1048 /// Build a
1049 /// [`<slot>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/slot)
1050 /// element.
1051 slot {
1052 name,
1053 }
1054
1055 /// Build a
1056 /// [`<template>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/template)
1057 /// element.
1058 template {}
1059
1060 // SVG components
1061 /// Build a
1062 /// [`<svg>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/svg)
1063 /// element.
1064 #[element(namespace = "http://www.w3.org/2000/svg")]
1065 svg {}
1066
1067
1068 // /// Build a
1069 // /// [`<a>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/a)
1070 // /// element.
1071 // #[element(namespace = "http://www.w3.org/2000/svg")]
1072 // a {}
1073
1074 /// Build a
1075 /// [`<animate>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/animate)
1076 /// element.
1077 #[element(namespace = "http://www.w3.org/2000/svg")]
1078 animate {}
1079
1080 /// Build a
1081 /// [`<animateMotion>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/animateMotion)
1082 /// element.
1083 #[element(namespace = "http://www.w3.org/2000/svg")]
1084 animateMotion {}
1085
1086 /// Build a
1087 /// [`<animateTransform>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/animateTransform)
1088 /// element.
1089 #[element(namespace = "http://www.w3.org/2000/svg")]
1090 animateTransform {}
1091
1092 /// Build a
1093 /// [`<circle>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/circle)
1094 /// element.
1095 #[element(namespace = "http://www.w3.org/2000/svg")]
1096 circle {}
1097
1098 /// Build a
1099 /// [`<clipPath>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/clipPath)
1100 /// element.
1101 #[element(namespace = "http://www.w3.org/2000/svg")]
1102 clipPath {}
1103
1104 /// Build a
1105 /// [`<defs>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/defs)
1106 /// element.
1107 #[element(namespace = "http://www.w3.org/2000/svg")]
1108 defs {}
1109
1110 /// Build a
1111 /// [`<desc>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/desc)
1112 /// element.
1113 #[element(namespace = "http://www.w3.org/2000/svg")]
1114 desc {}
1115
1116 /// Build a
1117 /// [`<discard>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/discard)
1118 /// element.
1119 #[element(namespace = "http://www.w3.org/2000/svg")]
1120 discard {}
1121
1122 /// Build a
1123 /// [`<ellipse>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/ellipse)
1124 /// element.
1125 #[element(namespace = "http://www.w3.org/2000/svg")]
1126 ellipse {}
1127
1128 /// Build a
1129 /// [`<feBlend>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feBlend)
1130 /// element.
1131 #[element(namespace = "http://www.w3.org/2000/svg")]
1132 feBlend {}
1133
1134 /// Build a
1135 /// [`<feColorMatrix>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feColorMatrix)
1136 /// element.
1137 #[element(namespace = "http://www.w3.org/2000/svg")]
1138 feColorMatrix {}
1139
1140 /// Build a
1141 /// [`<feComponentTransfer>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feComponentTransfer)
1142 /// element.
1143 #[element(namespace = "http://www.w3.org/2000/svg")]
1144 feComponentTransfer {}
1145
1146 /// Build a
1147 /// [`<feComposite>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feComposite)
1148 /// element.
1149 #[element(namespace = "http://www.w3.org/2000/svg")]
1150 feComposite {}
1151
1152 /// Build a
1153 /// [`<feConvolveMatrix>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feConvolveMatrix)
1154 /// element.
1155 #[element(namespace = "http://www.w3.org/2000/svg")]
1156 feConvolveMatrix {}
1157
1158 /// Build a
1159 /// [`<feDiffuseLighting>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feDiffuseLighting)
1160 /// element.
1161 #[element(namespace = "http://www.w3.org/2000/svg")]
1162 feDiffuseLighting {}
1163
1164 /// Build a
1165 /// [`<feDisplacementMap>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feDisplacementMap)
1166 /// element.
1167 #[element(namespace = "http://www.w3.org/2000/svg")]
1168 feDisplacementMap {}
1169
1170 /// Build a
1171 /// [`<feDistantLight>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feDistantLight)
1172 /// element.
1173 #[element(namespace = "http://www.w3.org/2000/svg")]
1174 feDistantLight {}
1175
1176 /// Build a
1177 /// [`<feDropShadow>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feDropShadow)
1178 /// element.
1179 #[element(namespace = "http://www.w3.org/2000/svg")]
1180 feDropShadow {}
1181
1182 /// Build a
1183 /// [`<feFlood>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feFlood)
1184 /// element.
1185 #[element(namespace = "http://www.w3.org/2000/svg")]
1186 feFlood {}
1187
1188 /// Build a
1189 /// [`<feFuncA>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feFuncA)
1190 /// element.
1191 #[element(namespace = "http://www.w3.org/2000/svg")]
1192 feFuncA {}
1193
1194 /// Build a
1195 /// [`<feFuncB>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feFuncB)
1196 /// element.
1197 #[element(namespace = "http://www.w3.org/2000/svg")]
1198 feFuncB {}
1199
1200 /// Build a
1201 /// [`<feFuncG>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feFuncG)
1202 /// element.
1203 #[element(namespace = "http://www.w3.org/2000/svg")]
1204 feFuncG {}
1205
1206 /// Build a
1207 /// [`<feFuncR>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feFuncR)
1208 /// element.
1209 #[element(namespace = "http://www.w3.org/2000/svg")]
1210 feFuncR {}
1211
1212 /// Build a
1213 /// [`<feGaussianBlur>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feGaussianBlur)
1214 /// element.
1215 #[element(namespace = "http://www.w3.org/2000/svg")]
1216 feGaussianBlur {}
1217
1218 /// Build a
1219 /// [`<feImage>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feImage)
1220 /// element.
1221 #[element(namespace = "http://www.w3.org/2000/svg")]
1222 feImage {}
1223
1224 /// Build a
1225 /// [`<feMerge>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feMerge)
1226 /// element.
1227 #[element(namespace = "http://www.w3.org/2000/svg")]
1228 feMerge {}
1229
1230 /// Build a
1231 /// [`<feMergeNode>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feMergeNode)
1232 /// element.
1233 #[element(namespace = "http://www.w3.org/2000/svg")]
1234 feMergeNode {}
1235
1236 /// Build a
1237 /// [`<feMorphology>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feMorphology)
1238 /// element.
1239 #[element(namespace = "http://www.w3.org/2000/svg")]
1240 feMorphology {}
1241
1242 /// Build a
1243 /// [`<feOffset>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feOffset)
1244 /// element.
1245 #[element(namespace = "http://www.w3.org/2000/svg")]
1246 feOffset {}
1247
1248 /// Build a
1249 /// [`<fePointLight>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/fePointLight)
1250 /// element.
1251 #[element(namespace = "http://www.w3.org/2000/svg")]
1252 fePointLight {}
1253
1254 /// Build a
1255 /// [`<feSpecularLighting>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feSpecularLighting)
1256 /// element.
1257 #[element(namespace = "http://www.w3.org/2000/svg")]
1258 feSpecularLighting {}
1259
1260 /// Build a
1261 /// [`<feSpotLight>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feSpotLight)
1262 /// element.
1263 #[element(namespace = "http://www.w3.org/2000/svg")]
1264 feSpotLight {}
1265
1266 /// Build a
1267 /// [`<feTile>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feTile)
1268 /// element.
1269 #[element(namespace = "http://www.w3.org/2000/svg")]
1270 feTile {}
1271
1272 /// Build a
1273 /// [`<feTurbulence>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feTurbulence)
1274 /// element.
1275 #[element(namespace = "http://www.w3.org/2000/svg")]
1276 feTurbulence {}
1277
1278 /// Build a
1279 /// [`<filter>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/filter)
1280 /// element.
1281 #[element(namespace = "http://www.w3.org/2000/svg")]
1282 filter {}
1283
1284 /// Build a
1285 /// [`<foreignObject>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/foreignObject)
1286 /// element.
1287 #[element(namespace = "http://www.w3.org/2000/svg")]
1288 foreignObject {}
1289
1290 /// Build a
1291 /// [`<g>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/g)
1292 /// element.
1293 #[element(namespace = "http://www.w3.org/2000/svg")]
1294 g {}
1295
1296 /// Build a
1297 /// [`<hatch>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/hatch)
1298 /// element.
1299 #[element(namespace = "http://www.w3.org/2000/svg")]
1300 hatch {}
1301
1302 /// Build a
1303 /// [`<hatchpath>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/hatchpath)
1304 /// element.
1305 #[element(namespace = "http://www.w3.org/2000/svg")]
1306 hatchpath {}
1307
1308 /// Build a
1309 /// [`<image>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/image)
1310 /// element.
1311 #[element(namespace = "http://www.w3.org/2000/svg")]
1312 image {}
1313
1314 /// Build a
1315 /// [`<line>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/line)
1316 /// element.
1317 #[element(namespace = "http://www.w3.org/2000/svg")]
1318 line {}
1319
1320 /// Build a
1321 /// [`<linearGradient>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/linearGradient)
1322 /// element.
1323 #[element(namespace = "http://www.w3.org/2000/svg")]
1324 linearGradient {}
1325
1326 /// Build a
1327 /// [`<marker>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/marker)
1328 /// element.
1329 #[element(namespace = "http://www.w3.org/2000/svg")]
1330 marker {}
1331
1332 /// Build a
1333 /// [`<mask>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/mask)
1334 /// element.
1335 #[element(namespace = "http://www.w3.org/2000/svg")]
1336 mask {}
1337
1338 /// Build a
1339 /// [`<metadata>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/metadata)
1340 /// element.
1341 #[element(namespace = "http://www.w3.org/2000/svg")]
1342 metadata {}
1343
1344 /// Build a
1345 /// [`<mpath>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/mpath)
1346 /// element.
1347 #[element(namespace = "http://www.w3.org/2000/svg")]
1348 mpath {}
1349
1350 /// Build a
1351 /// [`<path>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/path)
1352 /// element.
1353 #[element(namespace = "http://www.w3.org/2000/svg")]
1354 path {}
1355
1356 /// Build a
1357 /// [`<pattern>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/pattern)
1358 /// element.
1359 #[element(namespace = "http://www.w3.org/2000/svg")]
1360 pattern {}
1361
1362 /// Build a
1363 /// [`<polygon>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/polygon)
1364 /// element.
1365 #[element(namespace = "http://www.w3.org/2000/svg")]
1366 polygon {}
1367
1368 /// Build a
1369 /// [`<polyline>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/polyline)
1370 /// element.
1371 #[element(namespace = "http://www.w3.org/2000/svg")]
1372 polyline {}
1373
1374 /// Build a
1375 /// [`<radialGradient>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/radialGradient)
1376 /// element.
1377 #[element(namespace = "http://www.w3.org/2000/svg")]
1378 radialGradient {}
1379
1380 /// Build a
1381 /// [`<rect>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/rect)
1382 /// element.
1383 #[element(namespace = "http://www.w3.org/2000/svg")]
1384 rect {}
1385
1386 // /// Build a
1387 // /// [`<script>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/script)
1388 // /// element.
1389 // #[element(namespace = "http://www.w3.org/2000/svg")]
1390 // script {}
1391
1392 /// Build a
1393 /// [`<set>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/set)
1394 /// element.
1395 #[element(namespace = "http://www.w3.org/2000/svg")]
1396 set {}
1397
1398 /// Build a
1399 /// [`<stop>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/stop)
1400 /// element.
1401 #[element(namespace = "http://www.w3.org/2000/svg")]
1402 stop {}
1403
1404 // /// Build a
1405 // /// [`<style>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/style)
1406 // /// element.
1407 // #[element(namespace = "http://www.w3.org/2000/svg")]
1408 // style {}
1409
1410 // /// Build a
1411 // /// [`<svg>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/svg)
1412 // /// element.
1413 // #[element(namespace = "http://www.w3.org/2000/svg")]
1414 // svg {}
1415
1416 /// Build a
1417 /// [`<switch>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/switch)
1418 /// element.
1419 #[element(namespace = "http://www.w3.org/2000/svg")]
1420 switch {}
1421
1422 /// Build a
1423 /// [`<symbol>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/symbol)
1424 /// element.
1425 #[element(namespace = "http://www.w3.org/2000/svg")]
1426 symbol {}
1427
1428 /// Build a
1429 /// [`<text>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/text)
1430 /// element.
1431 #[element(namespace = "http://www.w3.org/2000/svg")]
1432 text {}
1433
1434 /// Build a
1435 /// [`<textPath>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/textPath)
1436 /// element.
1437 #[element(namespace = "http://www.w3.org/2000/svg")]
1438 textPath {}
1439
1440 // /// Build a
1441 // /// [`<title>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/title)
1442 // /// element.
1443 // #[element(namespace = "http://www.w3.org/2000/svg")]
1444 // title {}
1445
1446 /// Build a
1447 /// [`<tspan>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/tspan)
1448 /// element.
1449 #[element(namespace = "http://www.w3.org/2000/svg")]
1450 tspan {}
1451
1452 /// Build a
1453 /// [`<view>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/view)
1454 /// element.
1455 #[element(namespace = "http://www.w3.org/2000/svg")]
1456 view {}
1457
1458 // /// Build a
1459 // /// [`<use>`](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/use)
1460 // /// element.
1461 #[element(name = "use", namespace = "http://www.w3.org/2000/svg")]
1462 r#use {
1463 href,
1464 }
1465
1466 // MathML elements
1467
1468 /// Build a
1469 /// [`<annotation>`](https://w3c.github.io/mathml-core/#dfn-annotation)
1470 /// element.
1471 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1472 annotation {
1473 encoding,
1474 }
1475
1476 /// Build a
1477 /// [`<annotation-xml>`](https://w3c.github.io/mathml-core/#dfn-annotation-xml)
1478 /// element.
1479 #[element(name = "annotation-xml", namespace = "http://www.w3.org/1998/Math/MathML")]
1480 annotationXml {
1481 encoding,
1482 }
1483
1484 /// Build a
1485 /// [`<merror>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/merror)
1486 /// element.
1487 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1488 merror {}
1489
1490 /// Build a
1491 /// [`<math>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/math)
1492 /// element.
1493 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1494 math {
1495 display,
1496 }
1497
1498 /// Build a
1499 /// [`<mfrac>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mfrac)
1500 /// element.
1501 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1502 mfrac {
1503 linethickness,
1504 }
1505
1506 /// Build a
1507 /// [`<mi>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mi)
1508 /// element.
1509 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1510 mi {
1511 mathvariant,
1512 }
1513
1514 /// Build a
1515 /// [`<mmultiscripts>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mmultiscripts)
1516 /// element.
1517 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1518 mmultiscripts {}
1519
1520 /// Build a
1521 /// [`<mn>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mn)
1522 /// element.
1523 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1524 mn {}
1525
1526 /// Build a
1527 /// [`<mo>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mo)
1528 /// element.
1529 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1530 mo {
1531 fence,
1532 largeop,
1533 lspace,
1534 maxsize,
1535 minsize,
1536 movablelimits,
1537 rspace,
1538 separator,
1539 stretchy,
1540 symmetric,
1541 }
1542
1543 /// Build a
1544 /// [`<mover>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mover)
1545 /// element.
1546 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1547 mover {
1548 accent,
1549 }
1550
1551 /// Build a
1552 /// [`<mpadded>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mpadded)
1553 /// element.
1554 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1555 mpadded {
1556 depth,
1557 height,
1558 lspace,
1559 voffset,
1560 width,
1561 }
1562
1563 /// Build a
1564 /// [`<mphantom>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mphantom)
1565 /// element.
1566 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1567 mphantom {}
1568
1569 /// Build a
1570 /// [`<mprescripts>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mprescripts)
1571 /// element.
1572 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1573 mprescripts {}
1574
1575 /// Build a
1576 /// [`<mroot>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mroot)
1577 /// element.
1578 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1579 mroot {}
1580
1581 /// Build a
1582 /// [`<mrow>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mrow)
1583 /// element.
1584 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1585 mrow {
1586
1587 }
1588
1589 /// Build a
1590 /// [`<ms>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/ms)
1591 /// element.
1592 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1593 ms {
1594 lquote,
1595 rquote,
1596 }
1597
1598 /// Build a
1599 /// [`<mspace>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mspace)
1600 /// element.
1601 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1602 mspace {
1603 depth,
1604 height,
1605 width,
1606 }
1607
1608 /// Build a
1609 /// [`<msqrt>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/msqrt)
1610 /// element.
1611 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1612 msqrt {}
1613
1614 /// Build a
1615 /// [`<mstyle>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mstyle)
1616 /// element.
1617 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1618 mstyle {}
1619
1620 /// Build a
1621 /// [`<msub>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/msub)
1622 /// element.
1623 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1624 msub {}
1625
1626 /// Build a
1627 /// [`<msubsup>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/msubsup)
1628 /// element.
1629 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1630 msubsup {}
1631
1632 /// Build a
1633 /// [`<msup>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/msup)
1634 /// element.
1635 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1636 msup {}
1637
1638 /// Build a
1639 /// [`<mtable>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mtable)
1640 /// element.
1641 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1642 mtable {}
1643
1644 /// Build a
1645 /// [`<mtd>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mtd)
1646 /// element.
1647 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1648 mtd {
1649 columnspan,
1650 rowspan,
1651 }
1652
1653 /// Build a
1654 /// [`<mtext>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mtext)
1655 /// element.
1656 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1657 mtext {}
1658
1659 /// Build a
1660 /// [`<mtr>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mtr)
1661 /// element.
1662 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1663 mtr {}
1664
1665 /// Build a
1666 /// [`<munder>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/munder)
1667 /// element.
1668 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1669 munder {
1670 accentunder,
1671 }
1672
1673 /// Build a
1674 /// [`<munderover>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/munderover)
1675 /// element.
1676 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1677 munderover {
1678 accent,
1679 accentunder,
1680 }
1681
1682 /// Build a
1683 /// [`<semantics>`](https://developer.mozilla.org/en-US/docs/Web/MathML/Element/semantics)
1684 /// element.
1685 #[element(namespace = "http://www.w3.org/1998/Math/MathML")]
1686 semantics {
1687 encoding,
1688 }
1689}