All font sizes are set in the Main Stylesheet as :root variables: var(--fs0) > var(--fs6). ie. to adjust font sizing, do so by way of editing the :root variables.
These variables are then applied in Oxygen > Global Settings (from within the Oxygen Builder)
**Note: This 'framework' is still a "work-in-progress" and is still likely to evolve.
Fundamental sizing for gaps and margins between cells/columns and rows are set by :root variables in the Main stylesheet.
These Global Variables are:
--gutters: 20px; /* use for default Oxy SECTION left&right padding */
--sect-tb: calc(2vw + 20px); /* use for default Oxy SECTION top&bottom padding */
--gap: 4vmax; /* desired default gap for FlexBox and CSSGRID */
--vgap: 20px; /* vertical spacing for content in grid "tiles" */
--p: 1vmax; /* padding */
--bdr-rad: .8em; /* border radius */
--col-dyn-sm: 200px; /* width for tile in dynamic CSSGRID */
--col-dyn: 400px; /* width for tile in dynamic CSSGRID */
--col-dyn-lg: 600px; /* width for tile in dynamic CSSGRID */
If using FLEXBOX and 'gaps' are applied, the container has negative L&R margins (that match the gap size) so that the tile edges line up on the L&R edges of the page container *at the time of creating this, FLEXBOX wasn't found to use 'gap' effectively (but CSSGRID does)
Variations exist for both FLEX and GRID layouts specifying tile/column sizes. eg.
For a FLEXBOX layout, start by adding class flx* to the parent div
For a CSSGRID layout, start by adding class grd to the parent div
* the flx container will have a negative bottom margin corresponding to the eventual gap/row-gap value (this is because each 'tile' in the grid will have a bottom margin and it's to remove that unwanted bottom margin and the end of the div)
.... then add classes specifying column configuration
For evenly spaced columns, add one of the following classes to the parent div (the number represents the number of columns):
.flx-2, .flx-3, .flx-4, .flx-5, .flx-6
.grd-2, .grd-3, grd-4, .grd-5, .grd-6
*Each number in the classes below, represents a 'column' and their relative widths
flx-1-2 / grd-1-2
flx-3-2 / grd-3-2 etc...
Various modifiers also exist (to be applied to the containing parent divs):
.no-break
.tiles-centre
.tiles-center
.center-row
.centre-row
.tiles-left
.tiles-right
.tile-top
.tiles-end
.tiles-middle
.tiles-stretch,.eq-h
.grow, .flx-grow
.no-gutters
.flx-row
.flx-wrap
.flx-between
.flx-around
.full-span
For additional formatting classes for use inside of tiles, refer the table below:
.tile__inner /* Used inside of the div in Oxy REPEATER. This div can have an href applied */
Notes:
The aim is to:
Basic overview of setting up a grid:
Apply all of the following options to the parent-containing-div for a grid
Examples:
.flx.flx-4.gap.t-vgap
.flx.flx-3-2.gap
.flx.flx-6.gap-sm.t-vgap-sm.t-p.row-gap
.grd.grd-3.gap
.grd.grd-2-3.gap-lg.row-gap-sm
.grd.grd-dyn-xs.gap.t-vgap.t-p-sm
For easier responsive operation, it seems to work well to have just 2 columns/tiles inside the main parent div, and then add further grid/flex formatting within either of those columns where needed
.grd.grd-1-3.gap
.flx.flx-2-1.gap-sm