Class Html
- All Implemented Interfaces:
AttachNotifier
,DetachNotifier
,HasElement
,HasStyle
,Serializable
Note that it is the developer's responsibility to sanitize and remove any dangerous parts of the HTML before sending it to the user through this component. Passing raw input data to the user will possibly lead to cross-site scripting attacks.
This component does not expand the HTML fragment into a server side DOM tree
so you cannot traverse or modify the HTML on the server. The root element can
be accessed through Component.getElement()
and the inner HTML through
getInnerHtml()
.
The HTML fragment cannot be changed after creation. You should create a new instance to encapsulate another fragment.
Note that this component doesn't support svg element as a root node. See
separate Svg
component if you want to display SVG images.
- Since:
- 1.0
- Author:
- Vaadin Ltd
- See Also:
-
Constructor Summary
ConstructorDescriptionHtml
(InputStream stream) Creates an instance based on the HTML fragment read from the stream.Creates an instance based on the given HTML fragment. -
Method Summary
Modifier and TypeMethodDescriptionGets the inner HTML, i.e.void
setHtmlContent
(String html) Sets the content based on the given HTML fragment.Methods inherited from class com.vaadin.flow.component.Component
addListener, findAncestor, fireEvent, from, get, getChildren, getElement, getEventBus, getId, getListeners, getLocale, getParent, getTranslation, getTranslation, getTranslation, getTranslation, getTranslation, getTranslation, getUI, hasListener, isAttached, isTemplateMapped, isVisible, onAttach, onDetach, onEnabledStateChanged, removeFromParent, scrollIntoView, scrollIntoView, set, setElement, setId, setVisible
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.vaadin.flow.component.AttachNotifier
addAttachListener
Methods inherited from interface com.vaadin.flow.component.DetachNotifier
addDetachListener
Methods inherited from interface com.vaadin.flow.component.HasStyle
addClassName, addClassNames, getClassName, getClassNames, getStyle, hasClassName, removeClassName, removeClassNames, setClassName, setClassName
-
Constructor Details
-
Html
Creates an instance based on the HTML fragment read from the stream. The fragment must have exactly one root element.A best effort is done to parse broken HTML but no guarantees are given for how invalid HTML is handled.
Any heading or trailing whitespace is removed while parsing but any whitespace inside the root tag is preserved.
- Parameters:
stream
- the input stream which provides the HTML in UTF-8- Throws:
UncheckedIOException
- if reading the stream fails
-
Html
Creates an instance based on the given HTML fragment. The fragment must have exactly one root element.A best effort is done to parse broken HTML but no guarantees are given for how invalid HTML is handled.
Any heading or trailing whitespace is removed while parsing but any whitespace inside the root tag is preserved.
- Parameters:
outerHtml
- the HTML to wrap
-
-
Method Details
-
setHtmlContent
Sets the content based on the given HTML fragment. The fragment must have exactly one root element, which matches the existing one.A best effort is done to parse broken HTML but no guarantees are given for how invalid HTML is handled.
Any heading or trailing whitespace is removed while parsing but any whitespace inside the root tag is preserved.
- Parameters:
html
- the HTML to wrap
-
getInnerHtml
Gets the inner HTML, i.e. everything inside the root element.- Returns:
- the inner HTML, not
null
-