ZZ Test page

WYSIWYG Quick Reference — Do's and Don'ts

CKEditor 5 + AZ Bootstrap v2.0.27 [3][4]

Print this page to PDF: File → Print → Save as PDF


✅ DO — What Works

Allowed HTML Tags

Headingsh1 h2 h3 h4 h5 h6
Textp div blockquote pre hr
Inlinestrong em s sup sub code span a
Listsul ol li dl dt dd
Tablestable thead tbody tr th td

Allowed Attributes

class=""On almost every element — your primary styling tool
href=""On links
target=""On links (e.g., _blank)
id=""On divs

Available Colors

Text Colors (on span, p, div, td):

text-red · text-blue · text-sky · text-azurite · text-muted · text-success · text-warning · text-danger · text-info

Background Colors (on p, div, td):

bg-red
bg-blue
bg-sky
bg-azurite
bg-dark
bg-light
bg-success
bg-warning
bg-danger
bg-info

Spacing Classes

Pattern: {m or p}{t/b/l/r/x/y}-{breakpoint}-{0-10}

Size012345678910
Pixels0~4~8~16~24~48~64~80~96~112~128

Examples: mt-3 pb-5 px-md-4 my-lg-5 [1]

Responsive Breakpoints

NameXSSMMDLGXL
Min Width0px576px768px992px1200px
DevicePhoneLarge phoneTabletDesktopWide desktop
Class infix(none)-sm--md--lg--xl-

Common Show/Hide Patterns

GoalClasses
Phone onlyd-block d-sm-none
Tablet onlyd-none d-md-block d-lg-none
Desktop onlyd-none d-lg-block
Mobile only (<768px)d-block d-md-none
Tablet+ (768px+)d-none d-md-block

Typography, Layout & Components

Typography:

  • font-weight-bold
  • font-weight-light
  • font-italic
  • text-uppercase
  • text-lowercase
  • text-capitalize
  • lead
  • display-4

Layout:

  • row + col-*
  • d-flex
  • flex-column
  • flex-md-row
  • flex-wrap
  • justify-content-center
  • justify-content-between
  • align-items-center

Components:

  • alert alert-*
  • badge badge-*
  • card + card-body
  • btn btn-red
  • btn btn-blue
  • btn btn-outline-red
  • border
  • rounded
  • rounded-pill

❌ DON'T — What Gets Stripped

Stripped Tags

sectionRemoved, content dumped into p
articleRemoved, content dumped into p
uTag removed, text kept
markTag removed, text kept
smallTag removed, text kept
styleCompletely removed
svgCompletely removed
scriptCompletely removed

Stripped Attributes

style=""ALL inline styles on ALL elements
data-*=""Custom data attributes
role=""ARIA roles
onmouseover="" etc.All inline JavaScript events

Auto-Converted Tags

bstrongSemantic normalization [7]
iemSemantic normalization [7]
delsNormalized

⚠️ NOT POSSIBLE — Don't Even Try

  • Custom colors via inline CSS
  • CSS animations or transitions
  • CSS transforms (rotate, scale, skew)
  • Gradients (linear or radial)
  • Box shadows or text shadows
  • CSS filters (blur, grayscale)
  • Clip-path shapes
  • Custom fonts via inline CSS
  • SVG graphics
  • Any JavaScript interactions

🔑 The Golden Rule

ALL styling must be done through Bootstrap CSS classes.

Inline style="" attributes are always stripped. Use class="" with Bootstrap utilities instead.

Use the Source button in the CKEditor toolbar to paste HTML code.

For color accessibility, use the text color test at AZ Bootstrap color documentation [1]

TEST 1a: Heading 1

TEST 1b: Heading 2

TEST 1c: Heading 3

TEST 1d: Heading 4

TEST 1e: Heading 5
TEST 1f: Heading 6

TEST 2a: Bold (strong)

TEST 2b: Bold (b tag)

TEST 2c: Italic (em)

TEST 2d: Italic (i tag)

TEST 2e: Strikethrough (s)

TEST 2f: Strikethrough (del)

TEST 2g: Underline

TEST 2h: Superscript

TEST 2i: Subscript

TEST 2j: Inline code

TEST 2k: Mark/highlight

TEST 2l: Small text

TEST 3a: Basic link

TEST 3b: Link with target blank

TEST 3c: Link styled as button

TEST 3d: Link styled as blue button

TEST 3e: Outline button

  • TEST 4a: Unordered list item 1
  • TEST 4a: Unordered list item 2
  • TEST 4a: Unordered list item 3
  1. TEST 4b: Ordered list item 1
  2. TEST 4b: Ordered list item 2
  3. TEST 4b: Ordered list item 3
  • TEST 4c: Nested list parent
    • TEST 4c: Nested child 1
    • TEST 4c: Nested child 2

TEST 5a: Center aligned text

TEST 5b: Right aligned text

TEST 5c: Justified text

TEST 5d: Left aligned text

TEST 6a: text-white (on dark bg so visible)

TEST 6b: text-red

TEST 6c: text-blue

TEST 6d: text-sky

TEST 6e: text-azurite

TEST 6f: text-muted

TEST 6g: text-success

TEST 6h: text-warning

TEST 6i: text-danger

TEST 6j: text-info

TEST 7a: margin-top 1

TEST 7b: margin-top 3

TEST 7c: margin-bottom 3

TEST 7d: padding-top 3

TEST 7e: padding-bottom 3

TEST 7f: padding left-right 3

TEST 7g: padding top-bottom 3

TEST 8a: Inline style color red

TEST 8b: Inline style font-size 24px

TEST 8c: Inline style background yellow

TEST 8d: Multiple inline styles

TEST 8e: Paragraph with border and padding

TEST 9a: Basic div
TEST 9b: Div with text-align-center
TEST 9c: Div with inline bg color

TEST 9d: Section tagTEST 9e: Article tag

TEST 10: Header 1TEST 10: Header 2
TEST 10: Cell 1TEST 10: Cell 2
TEST 10: Cell 3TEST 10: Cell 4

 

TEST 11: Styled Header 1TEST 11: Styled Header 2
TEST 11: Styled Cell 1TEST 11: Styled Cell 2

 

TEST 12a: Blockquote text

TEST 12b: Preformatted text

TEST 12c: Code block 

TEST 13: Text above hr


TEST 13: Text below hr

 

TEST 14: Definition Term

TEST 14: Definition Description

 

TEST 15a: Alert info box
TEST 15b: Alert warning box
TEST 15c: Alert danger box
TEST 15d: Alert success box

 

TEST 16a: Badge primary

TEST 16b: Badge secondary

TEST 16c: Badge success

TEST 16d: Badge danger

 

TEST 17: Left Column (col-6)
TEST 17: Right Column (col-6)

 

TEST 18: Card Title

TEST 18: Card body content

 

TEST 19a: Paragraph with data attribute

TEST 19b: Div with ID attribute

TEST 19c: Paragraph with role attribute

 

TEST 20a: display none (should be invisible)

TEST 20b: display block

TEST 20c: display inline

TEST 20d: span forced to block 

TEST 21a: font-weight-bold class

TEST 21b: font-weight-light class

TEST 21c: font-italic class

TEST 21d: text-uppercase class

TEST 21e: TEXT-LOWERCASE CLASS

TEST 21f: text-capitalize class

 

TEST 22a: Lead paragraph (larger text)

TEST 22b: Display-4 heading style

 

TEST 23a: bg-red

TEST 23b: bg-blue

TEST 23c: bg-sky

TEST 23d: bg-azurite

TEST 23e: bg-light

TEST 23f: bg-dark

 

TEST 24a: border class

TEST 24b: border-red

TEST 24c: rounded border

TEST 24d: pill border

 

TEST 25: Responsive Breakpoint Tests (Full Width)

Resize your browser window. The colored bars below should appear/disappear at different widths AND span the full browser width.

Three methods are tested: Method A uses the viewport width calc trick, Method B uses your site's CSS variables, Method C uses container-fluid class.

 

Method A: Viewport Calc (100vw + negative margin)

TEST 25a-A: ALWAYS VISIBLE — Dark gray, should span full browser width
TEST 25c-A: XS ONLY (<576px) — RED full width bar
TEST 25d-A: SM ONLY (576-767px) — ORANGE full width bar
TEST 25e-A: MD ONLY (768-991px) — YELLOW full width bar
TEST 25f-A: LG ONLY (992-1199px) — GREEN full width bar
TEST 25g-A: XL ONLY (1200px+) — BLUE full width bar
TEST 25h-A: MD AND UP (768px+) — PURPLE full width bar
TEST 25i-A: BELOW MD (<768px) — TEAL full width bar
TEST 25j-A: LG AND UP (992px+) — DARK BLUE-GRAY full width bar

 

Method B: Site CSS Variables (--full-width-left-distance)

TEST 25a-B: ALWAYS VISIBLE — Dark gray using site CSS vars
TEST 25c-B: XS ONLY (<576px) — RED using site CSS vars
TEST 25h-B: MD AND UP (768px+) — PURPLE using site CSS vars

 

Method C: Bootstrap container-fluid

TEST 25a-C: ALWAYS VISIBLE — Dark gray using container-fluid
TEST 25c-C: XS ONLY (<576px) — RED using container-fluid
TEST 25h-C: MD AND UP (768px+) — PURPLE using container-fluid

 

TEST 26: Breakpoint Quick Reference

TestColorVisible WhenClasses Used
25aDark GrayAlwaysd-block
25cRedXS only (<576px)d-block d-sm-none
25dOrangeSM only (576-767px)d-none d-sm-block d-md-none
25eYellowMD only (768-991px)d-none d-md-block d-lg-none
25fGreenLG only (992-1199px)d-none d-lg-block d-xl-none
25gBlueXL only (1200px+)d-none d-xl-block
25hPurpleMD and up (768px+)d-none d-md-block
25iTealBelow MD (<768px)d-block d-md-none
25jDark Blue-GrayLG and up (992px+)d-none d-lg-block

 

TEST 27: Responsive Grid Test

TEST 27: Col A (12/6/4/3)
TEST 27: Col B (12/6/4/3)
TEST 27: Col C (12/6/4/3)
TEST 27: Col D (12/6/4/3)

 

TEST 28: Responsive Text Alignment

TEST 28a: Centered on mobile, left-aligned on md+

TEST 28b: Left on mobile, centered on lg+

TEST 28c: Center → Left at sm → Right at lg

 

TEST 29: Responsive Spacing

TEST 29a: Padding grows with screen size (p-2 → p-md-4 → p-lg-5)

TEST 29b: Margin-top grows with screen size (mt-2 → mt-md-4 → mt-lg-5)

 

TEST 30: Responsive Flex Direction

TEST 30: Flex Item A (stacked on mobile, row on md+)
TEST 30: Flex Item B (stacked on mobile, row on md+)
TEST 30: Flex Item C (stacked on mobile, row on md+)

 

TEST 31: Which Full-Width Method Works?

MethodTechniqueDid It Span Full Width?
Awidth:100vw; left:50%; margin-left:-50vw(check visually)
Bmargin-left: var(--full-width-left-distance)(check visually)
Cclass="container-fluid"(check visually)

 


Results Checklist

After saving, compare this checklist to what appears on the page:

  • Tests 1a-1f: Which heading levels survived?
  • Tests 2a-2l: Which inline formatting tags survived?
  • Tests 3a-3e: Did link attributes and button classes survive?
  • Tests 4a-4c: Did list nesting work?
  • Tests 5a-5d: Did text alignment classes work?
  • Tests 6a-6j: Which AZ Bootstrap text colors work?
  • Tests 7a-7g: Did spacing utility classes survive?
  • Tests 8a-8e: Did inline styles survive?
  • Tests 9a-9e: Did div, section, article tags survive?
  • Tests 10-11: Did tables render?
  • Tests 12a-12c: Did blockquote, pre, code survive?
  • Test 13: Did the horizontal rule render?
  • Test 14: Did definition lists survive?
  • Tests 15a-15d: Did alert boxes render with styling?
  • Tests 16a-16d: Did badges render?
  • Test 17: Did the two-column grid layout work?
  • Test 18: Did the card component render?
  • Tests 19a-19c: Did data, id, and role attributes survive?
  • Tests 20a-20d: Did display utilities work?
  • Tests 21a-21f: Did font utility classes work?
  • Tests 22a-22b: Did lead and display text work?
  • Tests 23a-23f: Did background color classes work?
  • Tests 24a-24d: Did border classes work?
  • Tests 25 (A/B/C): Which full-width method worked? Did colored bars span the entire browser?
  • Test 26: Did the reference table render with colored cells?
  • Test 27: Did the 4-column responsive grid reflow properly?
  • Test 28a-28c: Did text alignment change at different breakpoints?
  • Test 29a-29b: Did spacing change at different breakpoints?
  • Test 30: Did flex items go from stacked to side-by-side at md?
  • Test 31: Note which full-width method (A, B, or C) actually worked

ADV TEST 1: Text Shadow Effects

ADV 1a: Basic drop shadow text

ADV 1b: Red glow text (UA Brand Red)

ADV 1c: Hard offset shadow (Red text, Navy shadow)

ADV 1d: 3D stacked shadow text

ADV 1e: Outlined/stroked text (white with red outline)

ADV 1f: Neon blue glow effect

ADV TEST 2: Box Shadow Effects

ADV 2a: Subtle card shadow
ADV 2b: Colored shadow (UA Red tint)
ADV 2c: Material Design shadow
ADV 2d: Inset (inner) shadow
ADV 2e: Hard offset shadow (retro style)
ADV 2f: Double ring border effect

ADV TEST 3: CSS Gradients

ADV 3a: Linear gradient left to right (UA Red → Navy)
ADV 3b: Diagonal multi-stop gradient
ADV 3c: Hard split gradient (Navy top / Red bottom)
ADV 3d: Radial gradient (Red center → Navy edge)
ADV 3e: Subtle light gradient (professional sheen)

ADV 3f: Gradient text fill (may not work)

ADV TEST 4: CSS Transforms

ADV 4a: Rotated div (2 degrees)
ADV 4b: Skewed div (-3 degrees X)

ADV 4c: Scaled up text (1.1x)

ADV 4d: 3D perspective tilt

ADV TEST 5: CSS Transitions (hover effects)

Hover over each element to test if transitions work.

ADV 5a: Hover me — color change + lift + shadow (uses inline JS events)

ADV 5b: Hover button — scale + color change 

 

ADV 5c: Hover me — expanding left border accent

 

ADV TEST 6: Style Tag Test

.adv-test-pulse { animation: adv-pulse 2s infinite; background-color: #AB0520; color: white; padding: 20px; text-align: center; margin-bottom: 15px; } @keyframes adv-pulse { 0% { box-shadow: 0 0 0 0 rgba(171,5,32,0.7); } 70% { box-shadow: 0 0 0 15px rgba(171,5,32,0); } 100% { box-shadow: 0 0 0 0 rgba(171,5,32,0); } } .adv-test-shimmer { background: linear-gradient(90deg, #0C234B 25%, #1a3a6b 50%, #0C234B 75%); background-size: 200% 100%; animation: adv-shimmer 2s linear infinite; color: white; padding: 20px; text-align: center; margin-bottom: 15px; } @keyframes adv-shimmer { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } } .adv-test-fade-border { border: 3px solid #AB0520; padding: 20px; margin-bottom: 15px; animation: adv-border-fade 3s ease-in-out infinite alternate; } @keyframes adv-border-fade { 0% { border-color: #AB0520; } 50% { border-color: #0C234B; } 100% { border-color: #8B0015; } } .adv-hover-grow:hover { transform: scale(1.03); box-shadow: 0 8px 25px rgba(0,0,0,0.2); } .adv-hover-grow { transition: all 0.3s ease; padding: 20px; background: #f8f8f8; border: 1px solid #ddd; margin-bottom: 15px; cursor: pointer; } 

ADV 6a: Pulsing red glow animation (requires style tag)
ADV 6b: Shimmer/loading animation (requires style tag)
ADV 6c: Animated border color fade (requires style tag)
ADV 6d: Hover to grow with CSS class (requires style tag) — hover me

 

ADV TEST 7: Advanced Border Styles

ADV 7a: Dashed border
ADV 7b: Dotted border
ADV 7c: Double border
ADV 7d: Accent left border with light top/bottom
ADV 7e:
Circle
ADV 7f: Alternating border radius (leaf shape)

 

ADV TEST 8: Opacity and CSS Filters

ADV 8a: Opacity 1.0 (fully visible)
ADV 8b: Opacity 0.7
ADV 8c: Opacity 0.4
ADV 8d: CSS filter: blur(1px)
ADV 8e: CSS filter: grayscale (red should look gray)
ADV 8f: CSS filter: drop-shadow

 

ADV TEST 9: Advanced Flexbox

ADV 9a: Flex 1
ADV 9a: Flex 2 (double width)
ADV 9a: Flex 1
ADV 9b: Left
ADV 9b: Center
ADV 9b: Right
ADV 9c: Wrapping card 1
ADV 9c: Wrapping card 2
ADV 9c: Wrapping card 3
ADV 9c: Wrapping card 4

 

ADV TEST 10: CSS Grid Layout

ADV 10a: Grid 1
ADV 10a: Grid 2
ADV 10a: Grid 3
ADV 10b: Main content area (spans 2 rows)
ADV 10b: Sidebar top
ADV 10b: Sidebar bottom

 

ADV TEST 11: Advanced Typography

ADV 11a: Increased letter-spacing (2px) and line-height (1.8)

ADV 11b: Wide tracking uppercase

ADV 11c: Increased word-spacing (10px between these words)

ADV 11d: First-line text indent (40px). This paragraph should have its first line indented like a traditional book paragraph. The rest of the lines should wrap normally without any indentation applied.

ADV 11e: Small Caps Font Variant Text

ADV 11f: Vertical text (writing-mode)

 

ADV TEST 12: Positioning and Layering

ADV 12a: Base layer (position: relative)

BADGE
 
ADV 12b: Diagonal stripe pattern overlay

 

ADV TEST 13: Clip-Path Shapes

ADV 13a: Angled bottom edge (clip-path polygon)
ADV 13b: Parallelogram shape

 

ADV TEST 14: Styled Numbered Steps

1
ADV 14: Step one — styled number circle with content
2
ADV 14: Step two — continues the pattern
3
ADV 14: Step three — final step

 

ADV TEST 15: Decorative Dividers

 
 
 
♦ ADV 15c ♦
 
 

 

ADV TEST 16: Inline SVG

ADV 16: SVG Box 

ADV TEST 17: Interactive Cards (inline JS hover)

ADV 17a: Card One

Hover for lift effect with red border accent

ADV 17b: Card Two

Hover for lift effect with navy border accent

ADV 17c: Card Three

Hover for gradient fill effect

 


Advanced Test Results Checklist

After saving, check each test:

  • ADV 1a-1f: Which text-shadow effects survived?
  • ADV 2a-2f: Which box-shadow effects survived?
  • ADV 3a-3f: Which gradient backgrounds rendered? Did gradient text (3f) work?
  • ADV 4a-4d: Did CSS transforms (rotate, skew, scale, perspective) work?
  • ADV 5a-5c: Did inline JS hover events fire? Did transitions animate smoothly?
  • ADV 6a-6d: Did the <style> tag survive? (This is the BIG question — if yes, animations and class-based hovers work!)
  • ADV 7a-7f: Which border styles rendered? Did the circle (7e) work?
  • ADV 8a-8f: Did opacity scale work? Did CSS filters (blur, grayscale, drop-shadow) survive?
  • ADV 9a-9c: Did flexbox layouts with gap and flex ratios work?
  • ADV 10a-10b: Did CSS Grid layout work?
  • ADV 11a-11f: Which advanced typography properties survived?
  • ADV 12a-12b: Did absolute positioning and z-index layering work?
  • ADV 13a-13b: Did clip-path shapes render?
  • ADV 14: Did the numbered step circles render correctly?
  • ADV 15: Which decorative divider styles survived?
  • ADV 16: Did inline SVG render?
  • ADV 17a-17c: Did the hover card interactions work?

Key Questions to Answer:

  1. Did the <style> tag survive? (Test 6) — If YES, we have full animation capability!
  2. Did inline JS events (onmouseover/onmouseout) survive? (Tests 5, 17) — If YES, we have interactive hover effects!
  3. Did inline SVG survive? (Test 16) — If YES, we can create custom graphics!
  4. Which CSS properties in inline styles survived? Especially: transform, filter, clip-path, opacity, transition, box-shadow, text-shadow, gradients

WYSIWYG Capability Reference

What our CKEditor 5 + AZ Bootstrap v2.0.27 setup allows


Section 1: Allowed HTML Tags

✅ Tags That Work

CategoryTagsNotes
Headingsh1 h2 h3 h4 h5 h6All six levels work
Text Blocksp div blockquote preAll accept class attributes
Inlinestrong em s sup sub code span aspan accepts classes
Listsul ol liNesting works
Definition Listsdl dt ddContent auto-wrapped in p tags
Tablestable thead tbody tr th tdAuto-adds class="table"
OtherhrHorizontal rule

❌ Tags That Get Stripped

TagWhat Happens
sectionRemoved, content dumped into p tag
articleRemoved, content dumped into p tag
u (underline)Tag stripped, text kept
markTag stripped, text kept
smallTag stripped, text kept
styleCompletely removed
svgCompletely removed
scriptCompletely removed

🔄 Tags That Get Converted

You TypeBecomes
bstrong
iem
dels

Section 2: Allowed vs Stripped Attributes

AttributeStatusNotes
class=""✅ WorksOn almost every element
href=""✅ WorksOn a tags
target=""✅ WorksOn a tags (e.g., _blank)
id=""✅ WorksOn div tags
style=""❌ StrippedALL inline styles on ALL elements
data-*=""❌ StrippedCustom data attributes removed
role=""❌ StrippedARIA role removed
onmouseover=""❌ StrippedAll inline JS events removed

Section 3: AZ Bootstrap Utility Classes

All styling must be done through classes — this is your primary styling tool

Text Colors

Works on: span, p, div, td

text-redtext-bluetext-skytext-azurite
text-mutedtext-successtext-warningtext-danger
text-infotext-white  

Background Colors

Works on: p, div, td

bg-red — UA Brand Red
bg-blue — UA Brand Blue
bg-sky — Sky
bg-azurite — Azurite
bg-dark — Dark
bg-light — Light
bg-success — Success Green
bg-warning — Warning Yellow
bg-danger — Danger Red
bg-info — Info Teal

Spacing Classes

Pattern: {property}{sides}-{breakpoint}-{size}

PropertyCodeSidesCode
MarginmTopt
PaddingpBottomb
  Leftl
  Rightr
  Left + Rightx
  Top + Bottomy
  All sides(none)

Sizes: 0, 1, 2, 3, 4, 5 (and extended: 6, 7, 8, 9, 10, 20, 30) [1]

Examples:

  • mt-3 — margin-top size 3 (1rem | ~16px)
  • pb-5 — padding-bottom size 5 (3rem | ~48px)
  • px-md-4 — padding left+right size 4, starting at md breakpoint
  • my-lg-5 — margin top+bottom size 5, starting at lg breakpoint

Section 4: Typography Classes

ClassExample
font-weight-boldBold text
font-weight-lightLight text
font-italicItalic text
text-uppercaseuppercase text
text-lowercaseLOWERCASE TEXT
text-capitalizecapitalize each word
leadLead paragraph (larger)
display-4Display heading (very large)

Section 5: Text Alignment

Static Alignment

text-align-left — Left aligned
text-align-center — Center aligned
text-align-right — Right aligned
text-align-justify — Justified text fills the full width of the line by adjusting spacing between words

Responsive Alignment

ClassesBehavior
text-center text-md-leftCentered on mobile, left-aligned on tablet+
text-left text-lg-centerLeft on mobile, centered on desktop+
text-center text-sm-left text-lg-rightCenter → Left at sm → Right at lg

Section 6: Responsive Display Classes

Breakpoints

BreakpointMin WidthClass InfixTypical Device
XS0px(none)Small phones
SM576px-sm-Large phones
MD768px-md-Tablets
LG992px-lg-Small desktops
XL1200px-xl-Large desktops

Show/Hide Patterns

GoalClasses
Always visibled-block
Always hiddend-none
Phone only (<576px)d-block d-sm-none
Large phone only (576-767px)d-none d-sm-block d-md-none
Tablet only (768-991px)d-none d-md-block d-lg-none
Small desktop only (992-1199px)d-none d-lg-block d-xl-none
Large desktop only (1200px+)d-none d-xl-block
Mobile only (<768px)d-block d-md-none
Tablet and up (768px+)d-none d-md-block
Desktop only (992px+)d-none d-lg-block

Live Demo — Resize Browser to Test

ALWAYS VISIBLE — You should always see this dark bar
XS ONLY (<576px) — Phone only
SM ONLY (576-767px) — Large phone
MD ONLY (768-991px) — Tablet
LG ONLY (992-1199px) — Small desktop
XL ONLY (1200px+) — Large desktop

Section 7: Grid Layout

Basic Columns

col-6 (half)
col-6 (half)

Responsive Columns

These columns reflow at different screen sizes:

col-12 / sm-6 / md-4 / lg-3
col-12 / sm-6 / md-4 / lg-3
col-12 / sm-6 / md-4 / lg-3
col-12 / sm-6 / md-4 / lg-3

Common Grid Patterns

PatternClasses on Each Column
2 equal columnscol-12 col-md-6
3 equal columnscol-12 col-md-4
4 equal columnscol-12 col-sm-6 col-lg-3
Sidebar + Maincol-12 col-md-4 + col-12 col-md-8
Full → Half → Thirdcol-12 col-sm-6 col-lg-4

Section 8: Flexbox Classes

ClassWhat It Does
d-flexEnables flexbox on a container
flex-columnStack items vertically
flex-rowLay items horizontally
flex-md-rowHorizontal at md+ (stacked below)
flex-wrapAllow items to wrap to next line
justify-content-centerCenter items horizontally
justify-content-betweenSpace items evenly
align-items-centerCenter items vertically

Section 9: Bootstrap Components

Alerts

Info: Use alert alert-info for informational messages
Success: Use alert alert-success for success messages
Warning: Use alert alert-warning for warnings
Danger: Use alert alert-danger for critical alerts

Badges

badge-primary badge-secondary badge-success badge-danger

Cards

Card Title

Use card with card-body, card-title, and card-text

Button-Styled Links

btn btn-red btn btn-blue btn btn-outline-red

Borders

border — Standard border
border border-red — Red border
border rounded — Rounded corners
border rounded-pill — Pill shape

Section 10: Spacing Size Reference

SizeREMPixels (approx)Example Class
000pxmt-0
10.25rem~4pxmt-1
20.5rem~8pxmt-2
31.0rem~16pxmt-3
41.5rem~24pxmt-4
53.0rem~48pxmt-5
64.0rem~64pxmt-6
75.0rem~80pxmt-7
86.0rem~96pxmt-8
97.0rem~112pxmt-9
108.0rem~128pxmt-10
2016.0rem~256pxmt-20
3024.0rem~384pxmt-30

Responsive example: p-2 p-md-4 p-lg-5 — padding grows at each breakpoint [6]


Section 11: Quick Rules for Editors

✅ DO

  • Use Bootstrap classes for ALL styling
  • Use responsive display classes to show/hide content at different screen sizes
  • Use row + col-* for column layouts
  • Use bg-* and text-* classes for colors
  • Use spacing classes (mt-*, mb-*, p-*) for spacing
  • Use btn btn-red etc. on links for button styling
  • Use the Source button in the toolbar to paste HTML
  • Check color contrast per accessibility guidelines [1]

❌ DON'T

  • Don't use style="" attributes — they will ALL be stripped
  • Don't use inline JavaScript (onmouseover, onclick) — stripped
  • Don't use style tags — stripped
  • Don't use SVG — stripped
  • Don't use section or article tags — stripped
  • Don't use u, mark, or small tags — stripped
  • Don't rely on data-* or role attributes — stripped
  • Don't try CSS animations, transforms, gradients, or shadows — not possible without inline styles

Section 12: Common Recipes

Recipe 1: Colored Callout Box

Important Information

This is a callout using bg-azurite text-white p-4 mb-3 rounded on a div

Recipe 2: Two-Column Layout (Stacked on Mobile)

Left Column

Uses col-12 col-md-6 — full width on mobile, half on tablet+

Right Column

Same classes — sits beside the left column on tablet+

Recipe 3: Different Content for Mobile vs Desktop

📱 Mobile Version: This simplified content only shows on phones
🖥️ Desktop Version: This detailed content only shows on tablet and desktop

Recipe 4: Responsive Button Row

Recipe 5: Highlighted Table Row

Normal rowNormal content
Highlighted rowUses bg-warning on the tr tag
Normal rowNormal content