
Fancy Product
$40.00 - $80.00
Special Item

Sale Item
$50.00 $25.00
Popular Item

Sale Item
$50.00 $25.00
Fancy Product
$120.00 - $280.00
Special Item

Popular Item
Section title11
# | Header | Header | Header | Header | Header | Header | Header | Header |
---|---|---|---|---|---|---|---|---|
1,001 | random | data | placeholder | text | random | data | placeholder | text |
1,001 | random | data | placeholder | text | random | data | placeholder | text |
1,001 | random | data | placeholder | text | random | data | placeholder | text |
1,001 | random | data | placeholder | text | random | data | placeholder | text |
1,001 | random | data | placeholder | text | random | data | placeholder | text |
Checkout form
Below is an example form built entirely with Bootstrap’s form controls. Each required form group has a validation state that can be triggered by attempting to submit the form without completing it.
Your cart 3
-
Product name
Brief description -
Second product
Brief description -
Third item
Brief description -
Promo code
EXAMPLECODE - Total (USD) $20
Billing address

Борщ красный
Говядина, свекла, морковь, лук, томатная паста, масло, капуста, картофель, сметана.

Солянка
Говядина/телятина/свинина, ветчина, колбаса копченая, лук репчатый, соленые огурцы, оливки.




RTL2
Learn how to enable support for right-to-left text in Bootstrap across our layout, components, and utilities.
Section title00000
# | Header | Header | Header | Header | Header | Header | Header | Header |
---|---|---|---|---|---|---|---|---|
1,001 | random | data | placeholder | text | placeholder | text | placeholder | text |
1,001 | random | data | placeholder | text | placeholder | text | placeholder | text |
1,001 | random | data | placeholder | text | placeholder | text | placeholder | text |
1,001 | random | data | placeholder | text | placeholder | text | placeholder | text |
1,001 | random | data | placeholder | text | placeholder | text | placeholder | text |
1,001 | random | data | placeholder | text | placeholder | text | placeholder | text |
1,001 | random | data | placeholder | text | placeholder | text | placeholder | text |
1,001 | random | data | placeholder | text | placeholder | text | placeholder | text |
1,001 | random | data | placeholder | text | placeholder | text | placeholder | text |
1,001 | random | data | placeholder | text | placeholder | text | placeholder | text |
1,001 | random | data | placeholder | text | placeholder | text | placeholder | text |
Section title1111111
01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | |||||||||||||||||||||||||||||||
2 | |||||||||||||||||||||||||||||||
3 | |||||||||||||||||||||||||||||||
4 | |||||||||||||||||||||||||||||||
5 | |||||||||||||||||||||||||||||||
6 | |||||||||||||||||||||||||||||||
7 | |||||||||||||||||||||||||||||||
8 | |||||||||||||||||||||||||||||||
9 | |||||||||||||||||||||||||||||||
10 | |||||||||||||||||||||||||||||||
11 | |||||||||||||||||||||||||||||||
12 | |||||||||||||||||||||||||||||||
13 | |||||||||||||||||||||||||||||||
14 | |||||||||||||||||||||||||||||||
15 | |||||||||||||||||||||||||||||||
16 | |||||||||||||||||||||||||||||||
17 | |||||||||||||||||||||||||||||||
18 | |||||||||||||||||||||||||||||||
19 |
Get familiar91231
We recommend getting familiar with Bootstrap first by reading through our Getting Started Introduction page . Once you’ve run through it, continue reading here for how to enable RTL.
You may also want to read up on the RTLCSS project , as it powers our approach to RTL.
Required HTML
There are two strict requirements for enabling RTL in Bootstrap-powered pages.
-
Set
dir="rtl"
on the<html>
element. -
Add an appropriate
lang
attribute, likelang="ar"
, on the<html>
element.
From there, you’ll need to include an RTL version of our CSS. For example, here’s the stylesheet for our compiled and minified CSS with RTL enabled:
Starter template
You can see the above requirements reflected in this modified RTL starter template.
RTL examples
Get started with one of our several RTL examples .
Approach
Our approach to building RTL support into Bootstrap comes with two important decisions that impact how we write and use our CSS:
-
First, we decided to build it with the RTLCSS project. This gives us some powerful features for managing changes and overrides when moving from LTR to RTL. It also allows us to build two versions of Bootstrap from one codebase.
-
Second, we’ve renamed a handful of directional classes to adopt a logical properties approach. Most of you have already interacted with logical properties thanks to our flex utilities—they replace direction properties like
left
andright
in favorstart
andend
. That makes the class names and values appropriate for LTR and RTL without any overhead.
Working with RTL, through our source Sass or compiled CSS, shouldn’t be much different from our default LTR though.
Alternative font stack
In the case you’re using a custom font, be aware that not all fonts support the non-Latin alphabet. To switch from Pan-European to Arabic family, you may need to use
/*rtl:insert: {value}*/
in your font stack to modify the names of font families.