Default text style for paragraphs. Follow hiearchy when using "light" or "lighter" variants to deemphasize text — default style should be followed by "light" followed by "lighter".
Use "success" and "error" for status. View footer notes for things to avoid.
This kit uses default color by default, and can be replaced with colors below:
light lighter success error link
These colors are not for standard usage. You can use the color prop to make fixes if colors are not appearing properly, but consult your UX team members if you are deciding to implement it
<%= pb_rails("body", props: { text: "I am a body kit" }) %> <%= pb_rails("body", props: { text: "I am a body kit (Light)", color: "light" }) %> <%= pb_rails("body", props: { text: "I am a body kit (Lighter)", color: "lighter" }) %> <%= pb_rails("body", props: { text: "I am a body kit (Link)", color: "link" }) %> <%= pb_rails("body", props: { text: "I am a body kit (Error)", color: "error" }) %> <%= pb_rails("body", props: { text: "I am a body kit (Success)", color: "success" }) %>
Infuse your life with action. Don't wait for it to happen. Make it happen. Make your own future. Make your own hope. Make your own love. And whatever your beliefs, honor your creator, not by passively waiting for grace to come down from upon high, but by doing what you can to make grace happen... yourself, right now, right down here on Earth.
- Bradley Whitford
Using two global props can greatly improve the readability of articles and even forms. Set Max Width to md, and Line Height to loose.
<%= pb_rails("body", props: { line_height: "loose", max_width: "md" }) do %> <p>Infuse your life with action. Don't wait for it to happen. Make it happen. Make your own future. Make your own hope. Make your own love. And whatever your beliefs, honor your creator, not by passively waiting for grace to come down from upon high, but by doing what you can to make grace happen... yourself, right now, right down here on Earth.</p> <br /> <p>- Bradley Whitford</p> <% end %>
Playbook styles the b, strong, a. i, em, small and u tags within the body kit to match Playbook's design system.
<%= pb_rails("body") do %> <b>This text is using the <%="<b>"%> tag</b> <br /> <br /> <strong>This text is using the <%="<strong>"%> tag</strong> <br /> <br /> <a href="#">This text is using the <%="<a>"%> tag</a> <br /> <br /> <i>This text is using an <%="<i>"%> tag</i> <br /> <br /> This <em>word</em> is using an <%="<em>"%> tag. <br /> <br /> <small>This text is using a <%="<small>"%> tag.</small> <br /> <br /> <u>This text is using a <%="<u>"%> tag.</u> <% end %>
truncate | Type: String | Values: "1" | "2" | "3" | "4" | "5"
The truncate prop truncates overflowing text up to a maximum of five rows and adds an ellipsis at the end.
<% lorem = "Lorem ipsum dolor sit amet consectetur adipisicing elit. Veritatis, minus. Nisi beatae voluptatum labore sequi. Nemo accusantium corrupti, reiciendis magnam tenetur perferendis esse pariatur voluptas eaque hic vel rem nihil quidem dolorum ex dolor, libero ullam placeat, sapiente eos. Cumque obcaecati dignissimos molestiae, minima quibusdam sint maxime libero accusantium animi quis quia maiores enim ipsum, esse, modi laudantium illum error!" %> <%= pb_rails("flex", props: { orientation: "column", max_width: "md" }) do %> <%= pb_rails("caption", props: { text: "After first row" }) %> <%= pb_rails("body", props: { text: lorem, truncate: "1", margin_bottom: "md" }) %> <%= pb_rails("caption", props: { text: "After second row" }) %> <%= pb_rails("body", props: { text: lorem, truncate: "2", margin_bottom: "md" }) %> <%= pb_rails("caption", props: { text: "After third row" }) %> <%= pb_rails("body", props: { text: lorem, truncate: "3" }) %> <% end %>
Do not use positive and negative variants with each other. Use Pill Kit to show status if the text is short. Otherwise, use positive and negative variants and use them sparingly.
| Props | Type | Values |
|---|---|---|
align_content |
enum | responsive
|
start
end
center
spaceBetween
spaceAround
spaceEvenly
|
align_items |
enum | responsive
|
start
end
center
|
border_radius |
enum
|
none
xs
sm
md
lg
xl
rounded
|
cursor |
enum
|
auto
default
none
contextMenu
help
pointer
progress
wait
cell
|
dark |
boolean
|
true
false
|
flex |
enum | responsive
|
auto
initial
0
1
2
3
4
5
6
7
8
9
10
11
12
none
|
flex_direction |
enum | responsive
|
row
column
rowReverse
columnReverse
|
flex_wrap |
enum | responsive
|
wrap
nowrap
wrapReverse
|
justify_content |
enum | responsive
|
start
end
center
spaceBetween
spaceAround
spaceEvenly
|
line_height |
enum
|
loosest
looser
loose
normal
tight
tighter
tightest
|
margin_right |
array
|
none
xxs
xs
sm
md
lg
xl
|
margin_left |
array
|
none
xxs
xs
sm
md
lg
xl
|
margin_top |
array
|
none
xxs
xs
sm
md
lg
xl
|
margin_bottom |
array
|
none
xxs
xs
sm
md
lg
xl
|
margin_x |
array
|
none
xxs
xs
sm
md
lg
xl
|
margin_y |
array
|
none
xxs
xs
sm
md
lg
xl
|
margin |
array
|
none
xxs
xs
sm
md
lg
xl
|
width |
string
|
|
min_width |
string
|
|
max_width |
string
|
|
gap |
string | responsive
|
|
column_gap |
string | responsive
|
|
row_gap |
string | responsive
|
|
number_spacing |
enum
|
tabular
|
order |
enum | responsive
|
none
first
1
2
3
4
5
6
7
8
9
10
11
12
|
overflow_x |
enum
|
scroll
visible
hidden
auto
|
overflow_y |
enum
|
scroll
visible
hidden
auto
|
overflow |
enum
|
scroll
visible
hidden
auto
|
padding_right |
array
|
none
xxs
xs
sm
md
lg
xl
|
padding_left |
array
|
none
xxs
xs
sm
md
lg
xl
|
padding_top |
array
|
none
xxs
xs
sm
md
lg
xl
|
padding_bottom |
array
|
none
xxs
xs
sm
md
lg
xl
|
padding_x |
array
|
none
xxs
xs
sm
md
lg
xl
|
padding_y |
array
|
none
xxs
xs
sm
md
lg
xl
|
padding |
array
|
none
xxs
xs
sm
md
lg
xl
|
position |
enum
|
relative
absolute
fixed
sticky
static
|
shadow |
enum
|
none
deep
deeper
deepest
|
text_align |
enum | responsive
|
start
end
left
right
center
justify
justifyAll
matchParent
|
truncate |
enum
|
none
1
2
3
4
5
|
vertical_align |
enum | responsive
|
baseline
super
top
middle
bottom
sub
text-top
text-bottom
|
z_index |
enum | responsive
|
1
2
3
4
5
6
7
8
9
10
max
|
top |
enum | object
|
xxs
xs
sm
md
lg
xl
xxl
|
inset |
boolean
|
true
false
|
right |
enum | object
|
xxs
xs
sm
md
lg
xl
xxl
|
bottom |
enum | object
|
xxs
xs
sm
md
lg
xl
xxl
|
left |
enum | object
|
xxs
xs
sm
md
lg
xl
xxl
|
height |
string
|
|
max_height |
string
|
|
min_height |
string
|
|
hover |
object
|
|
group_hover |
boolean
|
true
false
|
| Props | Type | Values | Default |
|---|---|---|---|
color |
enum
|
default
light
lighter
link
error
success
|
default
|
highlighted_text |
array
|
||
highlighting |
boolean
|
true
false
|
false
|
status |
enum
|
neutral
negative
positive
|
neutral
|
tag |
enum
|
h1
h2
h3
h4
h5
h6
p
span
div
|
div
|
text |
string
|
||
variant |
enum
|
link
|