zoralabIFRAME Technical Specification - ZORALab's Hestia
The technical specifications to refer when using the package. Easy-going, offline supported (via web PWA installation), and detailed oriented. Courtesy from ZORALab's Hestia.
Objectives and Purposes
Main Purpose
This package's primary purpose is to provide user interface (UI) styling
specifically for iframe values. In web UI, it is shown as follows:
Legacy Recording
This package was known as iframe_hestiaUI
before ZORALab's Hestia
v1.2.0
. The transformation was due to someone attempting to steal
the copyrights and makes way for programming package's documentation
restructuring.
Product Designs
Designers
This component was designed by the following creators:
(Holloway) Chew, Kean HoDependencies
This component has the following dependencies (arranged in the order from left-top to right-bottom):
zoralabCOREHTML
For HTML, ZORALab's Hestia employs the W3C native syntax for simplicity and maximum compatibility sakes. ZORALab's Hestia recommends the following HTML code structure for this component.
Minimum HTML
The minimum required HTML codes are shown below:
<iframe src="..." sandbox="allow-scripts allow-same-origin" width="..." height="..." title="..." loading="lazy"> ... </iframe>
Responsive HTML
The responsive HTML codes are shown below:
<iframe ... width="100%" style="aspect-ratio: [WIDTH]/[HEIGHT];" > ... </iframe>
Hidden iFrame HTML
The hidden iframe HTML codes are shown below:
<iframe ... same as minimum html ... class="hidden"> ... </iframe>
REMEMBER: SPECIFY DIMENSION AT HTML
This component is a special html where its CSS's width
and
height
are very dictative even their values are in
auto
mode. Hence, please only set them at the HTML side.
<iframe ... width="..." height="..." > ... </iframe>
CSS
ZORALab's Hestia heavily rely on CSS to style this component and offering its css variables for customizations. Below are the list of available CSS variables at your disposal.
Display
Affects the display mode of the rendered component.
VARIABLE : --iframe-display CSS PROPERTY : display DEFAULT : block (>= v1.2.0)
Margin
Affects the margin of the rendered component.
VARIABLE : --iframe-margin CSS PROPERTY : margin DEFAULT : 0 auto (>= v1.2.0)
Border
Affects the border of the rendered component.
VARIABLE : --iframe-border CSS PROPERTY : border DEFAULT : none (>= v1.2.0)
Min-Width
Affects the minimum width of the rendered component.
VARIABLE : --iframe-min-width CSS PROPERTY : min-width DEFAULT : initial (>= v1.2.0)
Max-Width
Affects the maximum width of the rendered component.
VARIABLE : --iframe-max-width CSS PROPERTY : max-width DEFAULT : 100% (>= v1.2.0)
Min-Height
Affects the minimum height of the rendered component.
VARIABLE : --iframe-min-height CSS PROPERTY : min-height DEFAULT : initial (>= v1.2.0)
Height (Hidden)
Affects the height of the rendered component while in hidden mode.
VARIABLE : --iframe-height-hidden CSS PROPERTY : height DEFAULT : 1px (>= v1.2.0)
Max-Height
Affects the maximum height of the rendered component.
VARIABLE : --iframe-max-height CSS PROPERTY : max-height DEFAULT : initial (>= v1.2.0)
Background
Affects the background of the rendered component.
VARIABLE : --iframe-background CSS PROPERTY : background DEFAULT : inherit (>= v1.2.0)
Visibility
Affects the visibility of the rendered component.
VARIABLE : --iframe-visibility CSS PROPERTY : visibility DEFAULT : visible (>= v1.2.0)
Visibility (Hidden)
Affects the visibility of the rendered component while in hidden mode.
VARIABLE : --iframe-visibility-hidden CSS PROPERTY : visibility DEFAULT : hidden (>= v1.2.0)
JavaScript
Fortunately, this component does not use any JavaScript. Relax.
Constants
This package does not offer any constant value.
Variables
This package does not offer any variable.
Offered Functions
ToCSS
Render the CSS output for this UI component.
Hugo
Usage example:
{{- $ret := partial "hestiaGUI/zoralabIFRAME/ToCSS" . -}} <pre>{{- printf "%#v\n" $ret -}}</pre>
Data Types
This package does not offer any data type.
Epilogue
Looks like we have arrived to the last station. Intrigued to get in touch? Please feel free to start contacting us via the following public channels:
GitHub Discussion Portal