Lista dozwolonych kodów w szablonach HTML
W celu zapewnienia bezpieczeństwa i kompatybilności szablon raportu HTML jest automatycznie oczyszczany podczas zapisywania. Jeśli szablon zawiera niedozwolone znaczniki, użytkownik zostanie o tym powiadomiony i będzie mógł zdecydować, czy zezwolić na ich automatyczne usunięcie, czy też usunąć je ręcznie.
Szablonu HTML nie można zapisać, jeśli obejmuje jakąkolwiek zawartość, która nie jest wymieniona na tej stronie. Jeśli w szablonie znajduje się niedozwolona zawartość, przed zapisaniem należy ją najpierw oczyścić, automatycznie lub ręcznie usuwając niezgodny kod.
Znaczniki dozwolone domyślnie
a, abbr, acronym, address, area, article, aside, b, bdi, big, blockquote, body, br, button, caption, center, cite, code, col, colgroup, data, datalist, dd, del, details, dfn, dir, div, dl, dt, em, fieldset, figcaption, figure, font, footer, form, h1, h2, h3, h4, h5, h6, head, header, hr, html, i, img, input, ins, kbd, keygen, label, legend, li, main, mapować, mark, menu, menuitem, meter, nav, ol, optgroup, option, output, p, pre, progress, q, rp, rt, ruby, s, samp, sekcja, select, small, span, strike, strong, style, sub, summary, sup, table, tbody, td, textarea, tfoot, th, thead, time, title, tr, tt, u, ul, var, wbr.
Atrybuty dozwolone domyślnie
abbr, accept-charset, accept, accesskey, action, align, alt, autocomplete, autosave, axis, bgcolor, border, cellpadding, cellspacing, challenge, char, charoff, charset, checked, cite, class, czyścić, color, cols, colspan, compact, contenteditable, coords, datetime, dir, disabled, draggable, dropzone, enctype, for, frame, headers, height, high, href, hreflang, hspace, ismap, keytype, label, lang, list, longdesc, low, max, maxlength, media, method, min, multiple, name, nohref, noshade, novalidate, nowrap, open, optimum, pattern, placeholder, prompt, pubdate, radiogroup, readonly, rel, required, rev, reversed, rows, rowspan, rules, scope, selected, shape, size, span, spellcheck, src, start, step, style, summary, tabindex, target, title, type, usemap, valign, value, vspace, width, wrap.
Właściwości CSS dozwolone domyślnie
align-content, align-items, align-self, all, animation, animation-delay, animation-direction, animation-duration, animation-fill-mode, animation-iteration-count, animation-name, animation-play-state, animation-timing-function, backface-visibility, background, background-attachment, background-blend-mode, background-clip, background-color, background-image, background-origin, background-position, background-position-x, background-position-y, background-repeat, background-repeat-x, background-repeat-y, background-size, border, border-bottom, border-bottom-color, border-bottom-left-radius, border-bottom-right-radius, border-bottom-style, border-bottom-width, border-collapse, border-color, border-image, border-image-outset, border-image-repeat, border-image-slice, border-image-source, border-image-width, border-left, border-left-color, border-left-style, border-left-width, border-radius, border-right, border-right-color, border-right-style, border-right-width, border-spacing, border-style, border-top, border-top-color, border-top-left-radius, border-top-right-radius, border-top-style, border-top-width, border-width, bottom, box-decoration-break, box-shadow, box-sizing, break-after, break-before, break-inside, caption-side, caret-color, czyścić, clip, color, column-count, column-fill, column-gap, column-rule, column-rule-color, column-rule-style, column-rule-width, column-span, column-width, columns, content, counter-increment, counter-reset, cursor, direction, display, empty-cells, filter, flex, flex-basis, flex-direction, flex-flow, flex-grow, flex-shrink, flex-wrap, float, font, font-family, font-feature-settings, font-kerning, font-language-override, font-size, font-size-adjust, font-stretch, font-style, font-synthesis, font-variant, font-variant-alternates, font-variant-caps, font-variant-east-asian, font-variant-ligatures, font-variant-numeric, font-variant-position, font-weight, gap, grid, grid-area, grid-auto-columns, grid-auto-flow, grid-auto-rows, grid-column, grid-column-end, grid-column-gap, grid-column-start, grid-gap, grid-row, grid-row-end, grid-row-gap, grid-row-start, grid-template, grid-template-areas, grid-template-columns, grid-template-rows, hanging-punctuation, height, hyphens, image-rendering, isolation, justify-content, left, letter-spacing, line-break, line-height, list-style, list-style-image, list-style-position, list-style-type, margin, margin-bottom, margin-left, margin-right, margin-top, mask, mask-clip, mask-composite, mask-image, mask-mode, mask-origin, mask-position, mask-repeat, mask-size, mask-type, max-height, max-width, min-height, min-width, mix-blend-mode, object-fit, object-position, opacity, order, orphans, outline, outline-color, outline-offset, outline-style, outline-width, overflow, overflow-wrap, overflow-x, overflow-y, padding, padding-bottom, padding-left, padding-right, padding-top, page-break-after, page-break-before, page-break-inside, perspective, perspective-origin, pointer-events, position, quotes, resize, right, row-gap, scroll-behavior, tab-size, table-layout, text-align, text-align-last, text-combine-upright, text-decoration, text-decoration-color, text-decoration-line, text-decoration-skip, text-decoration-style, text-indent, text-justify, text-orientation, text-overflow, text-shadow, text-transform, text-underline-position, top, transform, transform-origin, transform-style, transition, transition-delay, transition-duration, transition-property, transition-timing-function, unicode-bidi, user-select, vertical-align, visibility, white-space, widows, width, word-break, word-spacing, word-wrap, writing-mode, z-index.
Reguły @ CSS dozwolone domyślnie
przestrzeń nazw, styl.
Schematy URI dozwolone domyślnie
dane, http, https, mailto.
Domyślne atrybuty zawierające identyfikatory URI
akcja, tło, dynsrc, href, lowsrc, src.
HTML i komentarze CSS
Dla wygody deweloperów komentarze HTML są dozwolone w szablonach HTML. Są one jednak usuwane w generowanych raportach HTML.
Komentarze CSS są usuwane zarówno w szablonach HTML, jak i generowanych raportach HTML.
Przykład oczyszczania
Następujący kod HTML wymaga oczyszczenia, ponieważ zawiera element script. Znacznik script nie jest uwzględniony w temacie Znaczniki dozwolone domyślnie.
<html><head>
<style>h2 { color: red }</style>
<script>Window.alert('Hi!')</script>
<title>Sanitization example</title>
</head>
<body>
<h2>This is your chart</h2>
</body></html>Po dodaniu tego kodu i próbie zapisania szablonu pojawi się prośba o wykonanie jednej z poniższych czynności:
-
Zezwól na automatyczne oczyszczenie kodu, klikając Zapisz mimo to.
-
Wróć do edytora, aby samodzielnie poprawić kod, klikając Zamknij i kontynuuj edycję.
Dzięki automatycznemu oczyszczeniu kod wynikowy w szablonie będzie miał następującą postać:
<html><head>
<style>h2 { color: #FF0000 }</style>
<title>Sanitization example</title>
</head>
<body>
<h2>This is your chart</h2>
</body></html>