Elements

Button

import { Button } from 'semantic-react';
Open isolated ⇢

Basic button. Icon and labeled buttons have own components

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesunknowntrue
classNamestring
Additional CSS ui classes
animatedunion
Adds a fade or slide animation on hover. One of type:
  • enum
  • bool
attachedunion
It's attached to some other attachable component. One of type:
  • enum
  • bool
basicbool
Adds simple styling to the component.
circularbool
A button can be circular
colorstring
Adds a SemanticUI color class.
compactbool
Reduces the padding on the component.
emphasisenum
A button can be formatted to show different levels of emphasis One of:
  • primary
  • secondary
  • positive
  • negative
floatedenum
Forces to component to float left or right. One of:
  • left
  • right
fluidbool
The component fills the parent components horizontal space.
invertedbool
Styles the component for a dark background.
sizeenum
Adds a SemanticUI size class. One of:
  • mini
  • tiny
  • small
  • medium
  • large
  • big
  • huge
  • massive
stateenum
Indicates whether the button is currently highlighted or disabled. One of:
  • active
  • disabled
  • loading
togglebool
A button can be formatted to toggle on and off

Standard Buttons

Emphasis Button
Animated Button
Next
Signup for our super account
Basic button
Add friend
Colored button
Inverted
States
Sizes
Compact
Toggle

Buttons

import { Buttons } from 'semantic-react';
Open isolated ⇢

Group of buttons

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
attachedenum
It's attached to some other attachable component. One of:
  • bottom
  • top
basicbool
Adds simple styling to the component.
colorstring
Adds a SemanticUI color class.
compactbool
Reduces the padding on the component.
equalbool
Forces all children to an equal width.
floatedenum
Forces to component to float left or right. One of:
  • left
  • right
invertedbool
Styles the component for a dark background.
sizeenum
Adds a SemanticUI size class. One of:
  • mini
  • tiny
  • small
  • medium
  • large
  • big
  • huge
  • massive
verticalbool
Forces child components to render vertically.

Buttons

IconButton

import { Iconbutton } from 'semantic-react';
Open isolated ⇢

Icon button es un button con icon, en serio

Props

NameTypeDefaultDescription
animatedunion
Adds a fade or slide animation on hover. One of type:
  • enum
  • bool
attachedunion
It's attached to some other attachable component. One of type:
  • enum
  • bool
basicbool
Adds simple styling to the component.
circularbool
A button can be circular
colorstring
Adds a SemanticUI color class.
compactbool
Reduces the padding on the component.
emphasisenum
A button can be formatted to show different levels of emphasis One of:
  • primary
  • secondary
  • positive
  • negative
floatedenum
Forces to component to float left or right. One of:
  • left
  • right
fluidbool
The component fills the parent components horizontal space.
invertedbool
Styles the component for a dark background.
sizeenum
Adds a SemanticUI size class. One of:
  • mini
  • tiny
  • small
  • medium
  • large
  • big
  • huge
  • massive
stateenum
Indicates whether the button is currently highlighted or disabled. One of:
  • active
  • disabled
  • loading
togglebool
A button can be formatted to toggle on and off
defaultClassesunknowntrue
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
classNamestring
Additional CSS ui classes
iconColorstring
Adds a SemanticUI color class to the icon.
iconComponentcustom
Icon component
namestringRequired
Adds a SemanticUI name class to the icon.

IconButton is just button with icon

Can use other button props

With caption

Test
Test

LabeledButton

import { Labeledbutton } from 'semantic-react';
Open isolated ⇢

Labeled button renders button with label, either text label or icon

Props

NameTypeDefaultDescription
animatedunion
Adds a fade or slide animation on hover. One of type:
  • enum
  • bool
attachedunion
It's attached to some other attachable component. One of type:
  • enum
  • bool
basicbool
Adds simple styling to the component.
circularbool
A button can be circular
colorstring
Adds a SemanticUI color class.
compactbool
Reduces the padding on the component.
emphasisenum
A button can be formatted to show different levels of emphasis One of:
  • primary
  • secondary
  • positive
  • negative
floatedenum
Forces to component to float left or right. One of:
  • left
  • right
fluidbool
The component fills the parent components horizontal space.
invertedbool
Styles the component for a dark background.
sizeenum
Adds a SemanticUI size class. One of:
  • mini
  • tiny
  • small
  • medium
  • large
  • big
  • huge
  • massive
stateenum
Indicates whether the button is currently highlighted or disabled. One of:
  • active
  • disabled
  • loading
togglebool
A button can be formatted to toggle on and off
defaultClassesunknowntrue
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
classNamestring
Additional CSS ui classes
labeledenumright
Label position, default to right One of:
  • left
  • right
labelTypeenumtext
Type of label, could be text label or icon One of:
  • text
  • icon
labelstringRequired
Label, if given string will be used as label text or icon name (if labelType is icon).
labelComponentcustom
Label component. Default will be Icon for labelType icon and Label for labelType label

Labeled Button

Oh uh

With button icon and label

Like me
Oh uh

By default label placement is the right, you can change it to left side

Like me
Oh uh
Oh no
Hate me

You can control label by passing labelComponent

Oh no

You can have icon instead as label

Icon Labeled button
Icon Labeled button

You can pass other Button props to the LabeledButton

Like me
Oh uh
Icon Labeled button

Control icon for icon labeled button

Custom icon

SocialButton

import { Socialbutton } from 'semantic-react';
Open isolated ⇢

Social button is simple social colored button with social icon. This is ordinary button,

Props

NameTypeDefaultDescription
animatedunion
Adds a fade or slide animation on hover. One of type:
  • enum
  • bool
attachedunion
It's attached to some other attachable component. One of type:
  • enum
  • bool
basicbool
Adds simple styling to the component.
circularbool
A button can be circular
colorstring
Adds a SemanticUI color class.
compactbool
Reduces the padding on the component.
emphasisenum
A button can be formatted to show different levels of emphasis One of:
  • primary
  • secondary
  • positive
  • negative
floatedenum
Forces to component to float left or right. One of:
  • left
  • right
fluidbool
The component fills the parent components horizontal space.
invertedbool
Styles the component for a dark background.
sizeenum
Adds a SemanticUI size class. One of:
  • mini
  • tiny
  • small
  • medium
  • large
  • big
  • huge
  • massive
stateenum
Indicates whether the button is currently highlighted or disabled. One of:
  • active
  • disabled
  • loading
togglebool
A button can be formatted to toggle on and off
defaultClassesunknowntrue
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
classNamestring
Additional CSS ui classes
namestringRequired
Adds a SemanticUI name class to the icon.

Social buttons

If doesn't contain any children when being rendered as IconButton

Supports almost all standard Button properties

If contain children when renders as Button with icon

Divider

import { Divider } from 'semantic-react';
Open isolated ⇢

Divider

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
alignedenum
Content segment vertically or horizontally One of:
  • horizontal
  • vertical
clearingbool
A divider can clear the contents above it
headerbool
Formats divider as header-like (taking less space and don't capitalize content)
hiddenbool
A hidden divider divides content without creating a dividing line
invertedbool
A divider can have its colors inverted
spacingenum
Divider spacing One of:
  • fitted
  • padded

Divider

A divider visually segments content into groups

Types

Divider

A standard divider

  • To add a divider between parts of a grid use a divided grid variation.

Vertical Divider

A divider can segment content vertically

  • Vertical dividers requires position: relative on the element that you would like to contain the divider

  • A vertical divider will automatically swap to a horizontal divider at mobile resolutions when used inside a stackable grid

    <Grid columns={3} relaxed="very" style={{position: "relative"}}>

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

    Nam efficitur nibh eget commodo hendrerit. Nulla facilisi. Mauris commodo porttitor dolor. AND Vivamus dui dui, eleifend vitae imperdiet ut, tristique bibendum ante.

    Fusce at orci ante. Nulla varius leo in ante cursus sodales. NOT Etiam est erat, elementum eu urna ut, finibus sollicitudin metus.

    Morbi dapibus id risus quis ultrices. Nunc hendrerit est vitae elementum dignissim.

Horizontal Divider

A divider can segment content horizontally

  • Horizontal dividers can also be used in combination with headers and icons to create different styles of dividers.

  • Dividers will automatically vary the size of their dividing rules to match the length of your text

    <Input action placeholder="Order #">

SyntaxError: unknown: Adjacent JSX elements must be wrapped in an enclosing tag (2:2)
  1 |       <Button color="blue">Search</Button>
> 2 |   </Input>
    |   ^
  3 |   <Divider aligned="horizontal">Or</Divider>
  4 |   <IconButton name="add" color="teal">Create New Order</IconButton>
  

Flag

import { Flag } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentunknowni
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
namestringRequired
The country code, name or alias of the flag

Just a flag

import { Header } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
alignedenum
A header can have its text aligned to a side One of:
  • right
  • left
  • justified
  • center
attachedunionfalse
A header can be attached to other content, like a segment One of type:
  • enum
  • bool
colorstring
A header can be formatted with different colors
disabledbool
A header can show that it is inactive
dividerbool
Header may be used as divider
emphasisenum
dividing: can be formatted to divide itself from the content below it block: can be formatted to appear inside a content block One of:
  • dividing
  • block
floatedenum
A header can sit to the left or right of other content One of:
  • right
  • left
iconstring
Icon name for header. This will turn header into icon header (ui icon header)
iconComponentcustom
Icon component
invertedbool
A header can have its colors inverted for contrast
itembooltrue
May be used as menu item
sizestring
May have various sizes

Header

First Header

First Header

First Header

First Header

First Header
You can use div with size for header also
Header
Header
Header
Header
Header

Icon header:

Account settings
Manage your account settings and set e-mail preference
Friends

Header with icon content

This is slightly differ from icon header

Uptime Guarantee

Image header:

Learn more

Patrick

Plug-ins
Check out our plug-in marketplace

Header could be disabled

Disabled header

Variations

Dividing:
Dividing header

dasfdasfdsafds

Block:
Block header
Attached header

Top Attached

Attached

Bottom Attached

Floating:

Go forward

Go back

Text Alignment

Right

Left

This should take up the full width even if only one line

Center

Colored

Header

Header

Header

Header

Header

Header

Header

Header

Header

Header

Header

Header

Inverted

Header

Header

Header

Header

Header

Header

Header

Header

Header

Header

Header

Header

SubHeader

import { Subheader } from 'semantic-react';
Open isolated ⇢

Sub header, same as header but with 'sub' class name Deprecated

Props

NameTypeDefaultDescription
alignedenum
A header can have its text aligned to a side One of:
  • right
  • left
  • justified
  • center
attachedunionfalse
A header can be attached to other content, like a segment One of type:
  • enum
  • bool
colorstring
A header can be formatted with different colors
disabledbool
A header can show that it is inactive
dividerbool
Header may be used as divider
emphasisenum
dividing: can be formatted to divide itself from the content below it block: can be formatted to appear inside a content block One of:
  • dividing
  • block
floatedenum
A header can sit to the left or right of other content One of:
  • right
  • left
iconstring
Icon name for header. This will turn header into icon header (ui icon header)
iconComponentcustom
Icon component
invertedbool
A header can have its colors inverted for contrast
itemunknownfalse
sizestring
May have various sizes
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesunknowntrue
classNamestring
Additional CSS ui classes

SubHeader

Deprecated, use just Header inside another Header instead

Almost like header

Price
$9999999999
Usually used as content in other header
Plug-ins
Check out our plug-in marketplace

Icon

import { Icon } from 'semantic-react';
Open isolated ⇢

Icon

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentunknowni
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
alignedenum
Vertical alignment of icon. Useful when child of other elements: Item One of:
  • top
  • middle
  • bottom
borderedbool
An icon can be formatted to appear bordered
circularbool
An icon can be formatted to appear circular
colorstring
An icon can be formatted with different colors
cornerbool
Render as corner icon if used in
stateenum
Icon could be disabled or used as simple loader One of:
  • disabled
  • loading
fittedbool
An icon can be fitted, without any space to the left or right of it.
floatedenum
Floated icon: Useful when child of other elements: Item One of:
  • left
  • right
flippedenum
An icon can be flipped One of:
  • horizontally
  • vertically
invertedbool
An icon can have its colors inverted for contrast
linkbool
Could be formatted as link
namestring
Icon name
sizeenum
Icon size One of:
  • mini
  • tiny
  • small
  • medium
  • large
  • big
  • huge
  • massive
rotatedenum
An icon can be rotated One of:
  • clockwise
  • counterclockwise

Icon

States:
Disabled:
Loading:
Variations:
Fitted:

Tight spacingTight spacing

Size:
Link:

When passing onClick handler it automatically become link icon

Flipped:
Rotated:
Circular:
Bordered:
Colored:
Inverted:

Icons

import { Icons } from 'semantic-react';
Open isolated ⇢

Group of icons

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentunknowni
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
sizeenum
Size of icon group One of:
  • mini
  • tiny
  • small
  • medium
  • large
  • big
  • huge
  • massive

Group of icons appear together

You can assign one icon in group as corner icon
Add on Twitter

Image

import { Image } from 'semantic-react';
Open isolated ⇢

Just an image

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentunknownimg
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
alignedenum
An image can specify its vertical alignment One of:
  • top
  • middle
  • bottom
avatarbool
An image may be formatted to appear inline with text as an avatar
borderedbool
An image may include a border to emphasize the edges of white or transparent content
centeredbool
An image can appear centered in a content block
fluidbool
An image can take up the width of its container
floatedenum
An image can sit to the left or right of other content One of:
  • right
  • left
sizestring
An image may appear at different sizes
spacedunion
An image can specify that it needs an additional spacing to separate it from nearby content One of type:
  • enum
  • bool
srcstringRequired
Image src
shapeenum
Image shape One of:
  • circular
  • rounded
stateenum
Image state, could be disabled or hidden One of:
  • disabled
  • visible
  • hidden
wrapComponentunionfalse
Wrap image component under other component, for example or In this case this component will receive image classes instead One of type:
  • bool
  • custom

Image

You can wrap image as child element of another element:

States:

Hidden
Disabled

Variations:

Avatar
Bordered
Fluid
Rounded
Circular
Aligned
Top alignedMiddle alignedBottom aligned
Centered

Eu quo homero blandit intellegebat. Incorrupte consequuntur mei id. Mei ut facer dolores adolescens, no illum aperiri quo, usu odio brute at. Qui te porro electram, ea dico facete utroque quo. Populo quodsi te eam, wisi everti eos ex, eum elitr altera utamur at. Quodsi convenire mnesarchum eu per, quas minimum postulant per id.

Spaced

Te eum doming eirmod, nominati pertinacia argumentum ad his. Ex eam alia facete scriptorem, est autem aliquip detraxit at. Usu ocurreret referrentur at, cu epicurei appellantur vix. Cum ea laoreet recteque electram, eos choro alterum definiebas in. Vim dolorum definiebas an. Mei ex natum rebum iisque.

Floated

Te eum doming eirmod, nominati pertinacia argumentum ad his. Ex eam alia facete scriptorem, est autem aliquip detraxit at. Usu ocurreret referrentur at, cu epicurei appellantur vix. Cum ea laoreet recteque electram, eos choro alterum definiebas in. Vim dolorum definiebas an. Mei ex natum rebum iisque.

Te eum doming eirmod, nominati pertinacia argumentum ad his. Ex eam alia facete scriptorem, est autem aliquip detraxit at. Usu ocurreret referrentur at, cu epicurei appellantur vix. Cum ea laoreet recteque electram, eos choro alterum definiebas in. Vim dolorum definiebas an. Mei ex natum rebum iisque.

Te eum doming eirmod, nominati pertinacia argumentum ad his. Ex eam alia facete scriptorem, est autem aliquip detraxit at. Usu ocurreret referrentur at, cu epicurei appellantur vix. Cum ea laoreet recteque electram, eos choro alterum definiebas in. Vim dolorum definiebas an. Mei ex natum rebum iisque.

Size

Images

import { Images } from 'semantic-react';
Open isolated ⇢

Group of images

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
sizeenum
Images size One of:
  • mini
  • tiny
  • small
  • medium
  • large
  • big
  • huge
  • massive

Images

Just a group of images

Input

import { Input } from 'semantic-react';
Open isolated ⇢

Controlled basic input

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentunknowninput
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
actionComponentcustom
Action component
actionPositionenumright
Action position One of:
  • left
  • right
fluidbool
An input can take the size of its container
iconstring
Render icon
iconPositionenumright
Icon position One of:
  • left
  • right
iconComponentcustom
Pass custom icon component
invertedbool
Inverted input
labelstring
Render label for input
labelComponentcustom
Pass custom label component
labelPositionenumleft
Label position One of:
  • left
  • right
  • left corner
  • right corner
placeholderstring
Input placeholder
sizeenum
Input size One of:
  • mini
  • tiny
  • small
  • medium
  • large
  • big
  • huge
  • massive
stateenum
Input state One of:
  • focus
  • loading
  • disabled
  • error
transparentbool
Render transparent input
valuestring
Input value

Input

Without value will be uncontrolled input
With value provided will be controlled input

States

Focused:
Disabled:
Error:
Loading:

Loading state will always add automatically icon, even if you provided different

Variations:

Icon input

By default icon is being placed on the right side:

You can control position by iconPosition prop:

You can pass own custom icon component

Labeled input

By default is being placed on the left side:

http://

You can control position too:

kg

Or pass custom label component:

kg

Or you can have labeled icon button:

Users
Users

Or more handy using custom label component:

Add tag

Left/right corner labels requires custom label class:

right

Action

Input can be linked with some action component, usually with button:

Want button with dropdown? This is not a problem!

Note: Usually you'll want to encapsulate this logic into your own component

You've typed .com
Transparent

Simple

Transparent with icon

Inverted
Fluid
Size

Detail

import { Detail } from 'semantic-react';
Open isolated ⇢

Label detail element

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes

Detail

Used in label to specify additional content

Veronika
Friend

Label

import { Label } from 'semantic-react';
Open isolated ⇢

Label

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
attachedenum
A label can attach to a content segment One of:
  • top
  • bottom
  • top right
  • top left
  • bottom left
  • bottom right
basicbool
A label can reduce its complexity
circularbool
A label can be circular
colorstring
A label can have different colors
cornerunion
A label can position itself in the corner of an element One of type:
  • enum
  • bool
emptybool
Empty label
floatingbool
A label can float above another element
horizontalbool
A horizontal label is formatted to label content along-side it horizontally
imagestring
Add image to the label
linkbool
Format label as link (uses tag)
pointingunion
A label can point to content next to it One of type:
  • enum
  • bool
ribbonunion
A label can appear as a ribbon attaching itself to an element. One of type:
  • enum
  • bool
sizestring
A label can be small or large
tagbool
A label can appear as a tag

Label

23

Image label

Elliot
Joe
Stevie

Image label with detail

Veronika
Friend
Jenny
Student
Jenny
Co-worker

And with icon

Veronika
Jenny

Pointing

Please enter the value
Please enter the value
Name is taken
Lalalalla
Please enter the value
Please enter the value
Name is taken
Lalalalla

Corner

Note: Image will be automatically wrapped into div

Tag

New
Upcoming
Featured

Ribbon

Overview
Account details

Community
User reviews

Specs

Reviews

Horizontal

Fruit
Kumquats

Floating

Detail content

Docs
214

Icon content

Mail
Tag

Image content

This is not image label!

Elliot
Stevie

Link

Circular

2
2
2
2
2
2
2
2
2
2
2
2
2

Empty

Basic

Basic
Pointing
Elliot
Color pointing
Blue

Colored

Red
Orange
Yellow
Olive
Green
Teal
Purple
Pink
Brown
Grey
Black

Size

Mini
Tiny
Small
Medium
Large
Big
Huge
Massive

Labels

import { Labels } from 'semantic-react';
Open isolated ⇢

Group of labels which can share same size, shape or color

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
circularbool
Labels can share shapes
colorstring
Labels can share colors together
tagbool
Labels can share tag formatting
sizestring
Labels can share sizes together

Labels

Group labels

Size

Fun
Happy
Smart
Witty

Color

Fun
Happy
22
Smart

Tag group

$10
$19
$33333
$999999999999999999

Circular group

1
2
3
4
5

List

import { List } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
alignedenum
Controls content alignment for all items in list One of:
  • top
  • middle
  • bottom
animatedbool
A list can animate to set the current item apart from the list
celledunion
Cell type One of type:
  • enum
  • bool
floatedenum
Controls content floating for all items in list One of:
  • right
  • left
horizontalbool
A list can be formatted to have items appear horizontally
invertedbool
A list can be inverted to appear on a dark background
linkbool
A list can be specially formatted for navigation links
relaxedbool
A list can relax its padding to provide more negative space
selectionbool
A selection list formats list items as possible choices
sizestring
A list can vary in size
typeenum
Type of the list Bulleted: mark items with a bullet Ordered: mark items with a number One of:
  • bulleted
  • ordered

List

A list groups related content

Examples:
Apples
Pears
Oranges
Semantic UI
New York, NY
Semantic-Org/Semantic-UI
Updated 10 mis ago
src
Source files for project
site
Your site's name
Themes
Theme sfolder
Folder
Another folder

Types

Bulleted
Gaining access
Inviting Friends
Benefits
Test 1
Test 2
Ordered
Gaining access
Inviting Friends
Benefits
Test 1
Test 2
Link list

Content

Simple item
1
2
3
Item with icon

by default image prop is assumed as icon name

test
Text
Description
Inline text
Item with image

Note: by default image is assumed as avatar image since it's most common case, you can provide custom image component to override

Rachel
Test
Text
Description
Custom Image/Icon component
test
Rachel
Test
Right floated component
Lena
Lena
Lena
Item with header
Test header
test text
Another header
another text

Variations

Horizontal list
Tom
Top person
Tom
Top person
Tom
Top person
Inverted list
Test 1
Test 1
Test 1
Test 1
Selection list
Tom
Top person
Tom
Top person
Tom
Top person
Animated list
Tom
Top person
Tom
Top person
Tom
Top person
Relaxed
Tom
Top person
Tom
Top person
Tom
Top person
header
header
header
Divided
header
header
header
Celled
header
header
header
Size
header
header
header

header
header
header

header
header
header

header
header
header

header
header
header

header
header
header

header
header
header

ListItem

import { Listitem } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
activebool
Mark item as active. Valid only for link list
contentAlignedenum
Content alignment One of:
  • top
  • middle
  • bottom
imagestring
Image/Icon name
imageTypeenumicon
Type of image/icon One of:
  • image
  • icon
imageComponentcustom
Image/Icon component. Override to tune
rightFloatedComponentcustom
Right floated content component. If not provided, then right floated content will not be rendered

ListItem

Provides common abstraction around list item

Loader

import { Loader } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
centeredbool
Loaders can appear inline centered with content
inlinebool
Loaders can appear inline with content
invertedbool
Loaders can have their colors inverted.
sizeenum
Loaders can have different sizes One of:
  • mini
  • tiny
  • small
  • medium
  • large
  • big
  • huge
  • massive
stateenum
Loader state One of:
  • active
  • indeterminate
  • disabled
textbool
A loader can contain text

Loader

Loaders are hidden unless active or inside active dimmer

Text Loader

Loading

Loading

States

Indeterminate

Preparing
Active

Without dimmer need to give state="active"

Loading

Disabled

Variations

Inline
Some text
Some text
Inline centered
Some text
Some text
Sizes

Loading

Loading

Loading

Loading

Loading

Loading

Loading

Loading
Inverted

Loaders will automatically be inverted inside inverted dimmer

Loading

Rail

import { Rail } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
attachedbool
A rail can appear attached to the main viewport
closeunionfalse
A rail can appear closer to the main viewport One of type:
  • bool
  • enum
dividingbool
A rail can create a division between itself and a container
floatedenumRequired
A rail can be presented on the left or right side of a container One of:
  • right
  • left
internalbool
A rail can attach itself to the inside of a container
sizeenum
A rail can have different sizes One of:
  • mini
  • tiny
  • small
  • medium
  • large
  • big
  • huge
  • massive

Rail

Rails display optional accompanying content outside of the main viewport of your website. Sites often use rails with sticky content to fix additional—often optional—content to your viewport as you scroll through the page.

Right rail content

Variations

Internal
Right rail content
Dividing
Right rail content
Attached
Right rail content
Right rail content
Close
Right rail content
Right rail content
Sizes
Right rail content

Reveal

import { Reveal } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
activebool
An active reveal displays its hidden content
circularbool
disabledbool
fadebool
imageboolfalse
instantbool
moveunionfalse
One of type:
  • enum
  • bool
rotateunionfalse
One of type:
  • enum
  • bool
sizestringsmall
typestring

Reveal

First content

Segment

import { Segment } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
alignedenum
A segment can have its text aligned to a side One of:
  • right
  • left
  • center
attachedunionfalse
A segment can be attached to other content on a page One of type:
  • enum
  • bool
basicbool
A basic segment has no special formatting
blurringbool
Blurring segment when used with dimmer
clearingbool
A segment can clear floated content
colorstring
A segment can be colored
containerbool
Container segment
disabledbool
A segment may show its content is disabled
emphasisenum
A segment can be formatted to appear more or less noticeable One of:
  • primary
  • secondary
  • tertiary
floatedenum
A segment can appear to the left or right of other content One of:
  • right
  • left
invertedbool
A segment can have its colors inverted for contrast
loadingbool
A segment may show its content is being loaded
spacingenum
Segment spacing One of:
  • fitted
  • padded
typeenum
Segment type One of:
  • raised
  • stacked
  • piled
verticalbool
A vertical segment formats content to be aligned as part of a vertical group
zIndexnumber
Segment zIndex
styleunknown{}

Segment

Content

Segments

import { Segments } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
compactbool
Compact segments
horizontalbool
Horizontal segments
invertedbool
Inverted segments
typeenum
Type of segments One of:
  • raised
  • stacked
  • piled

Segments

Group of segments

First
Second

Step

import { Step } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
titlestring
A step can contain a title
descriptionstring
A step can contain a description
iconstring
A step can contain an icon
iconComponentcustom
Icon component
linkstring
A step can link
activebool
A step can be highlighted as active
completedbool
A step can show that a user has completed it
disabledbool
A step can show that it cannot be selected

Steps

import { Steps } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
orderedbool
Steps can be shown as an ordered sequence
verticalbool
Steps can be displayed stacked vertically
stackablebool
Steps can stack vertically on smaller screens
fluidbool
Steps can take up the width of their container
attachedunion
Steps can be attached to other elements One of type:
  • enum
  • bool
equalWidthsbool
Steps can be divided evenly inside their parent
sizeenum
Steps can have different sizes Sizes

Steps

Shipping
Choose your shipping options
Billing
Enter billing information
Confirm Order

Simple elements

Actions

import { Actions } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes

Actions

Used in other element markup

Author

import { Author } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentunknowna
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes

Author

Used in other element markup

Container

import { Container } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
alignedenum
One of:
  • right
  • left
  • justified
  • center
fluidbool

Container

Semantic-UI container

Content

import { Content } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
activebool
True to be active content
alignedstring
Content vertical alignment. Useful when child of other elements: Item
extrabool
Extra content
floatedunionfalse
Content floating. Useful when child of other elements: Item One of type:
  • string
  • bool
hiddenbool
Hidden content
metabool
Meta content
visiblebool
Visible content
imagebool
Image content

Content

Used in many other elements as List/Item/Menu content

Description

import { Description } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
hiddenbool
visiblebool

Description

Used in other element markup

Meta

import { Meta } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes

Meta

Used in other element markup

Summary

import { Summary } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes

Summary

Used in other element markup

Text

import { Text } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
extrabool

Text

Used in other element markup

Collections - Form

Field

import { Field } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
groupedbool
Grouped field
inlinebool
A field can have its label next to instead of above it.
labelstring
Field label
requiredbool
A field can show that input is mandatory
stateenum
Field state One of:
  • disabled
  • error
widthnumber
Field width in columns

Field

Form field

Fields

import { Fields } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
equalWidthbool
Fields can automatically divide fields to be equal width
fluidbool
Fields can have their widths divided evenly
groupedbool
Fields can show related choices
inlinebool
Multiple fields may be inline in a row

Fields

Group of fields in the form

Form

import { Form } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentunknownform
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
equalWidthbool
Forms can automatically divide fields to be equal width
invertedbool
A form on a dark background may have to invert its color scheme
loadingbool
If a form is in loading state, it will automatically show a loading indicator.
sizestring
A form can vary in size
stateenum
Form state One of:
  • success
  • error
  • warning

Form

Collections - Grid

Column

import { Column } from 'semantic-react';
Open isolated ⇢

Grid column

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
alignedenum
Horizontal content alignment One of:
  • right
  • left
  • center
floatedenum
Float to the right or left edge of the row One of:
  • right
  • left
onlyunion
Only visible for types. Could be single type string or array, i.e. only={"mobile","tablet"} One of type:
  • enum
  • enum[]
colorstring
Column color
widthnumber
Column width for all device types
mobileWidthnumber
Column width for mobile
tabletWidthnumber
Column width for tablet
computerWidthnumber
Column width for computer
largeScreenWidthnumber
Column width for large screens
wideScreenWidthnumber
Column width for wide screens
valignedenum
Vertical content alignment One of:
  • top
  • middle
  • bottom

Column

Column in grid

Grid

import { Grid } from 'semantic-react';
Open isolated ⇢

Semantic Grid

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
alignedenum
Horizontal content alignment One of:
  • right
  • left
  • center
centeredbool
Center columns
celledunion
Divide rows into cells One of type:
  • enum
  • bool
columnsnumber
Grid column count
containerbool
Add container class, i.e. ui grid container
dividedunion
Add dividers between ros One of type:
  • enum
  • bool
doublingbool
Double column width on tablet and mobile sizes
equalbool
Automatically resize elements to split the available width evently
paddedunion
Preserve gutters on first and las columns One of type:
  • enum
  • bool
relaxedunion
Increase size of gutters One of type:
  • enum
  • bool
reversedunion
Reverse the order of columns or rows by device One of type:
  • custom
  • custom
  • custom
  • custom
  • custom
  • custom
stackablebool
Automatically stack rows into single columns on mobile devices
valignedenum
Vertical content alignment One of:
  • top
  • middle
  • bottom

Grid

uno
dos
tres
cuatro

Row

import { Row } from 'semantic-react';
Open isolated ⇢

Grid row

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
alignedenum
Horizontal content alignment One of:
  • right
  • left
  • center
centeredbool
Center columns in row
doublingbool
Double column width on tablet and mobile sizes
equalbool
Automatically resize elements to split the available width evently
onlyunion
Only visible for types. Could be single type string or array, i.e. only={"mobile","tablet"} One of type:
  • enum
  • enum[]
columnsnumber
Specify row columns count
stretchedbool
Stretch content to take up the entire column height
colorstring
Row color
justifiedbool
Justified content fits exactly inside the grid column, taking up the entire width from one side to the other
valignedenum
Vertical content alignment One of:
  • top
  • middle
  • bottom

Row

Row in grid

Collections - Table

Table

import { Table } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentunknowntable
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
alignedenum
A table header, row, or cell can adjust its text alignment One of:
  • top
  • bottom
basicunion
A table can reduce its complexity to increase readability. One of type:
  • enum
  • bool
celledbool
A table may be divided each row into separate cells
collapsingbool
A cell can be collapsing so that it only uses as much space as required
colorstring
A table can be given a color to distinguish it from other tables.
columnsnumber
A table can specify its column count to divide its content evenly
compactunion
A table may sometimes need to be more compact to make more rows visible at a time One of type:
  • enum
  • bool
definitionbool
fixedbool
A table can use table-layout: fixed a special faster form of table rendering that does not resize table cells based on content.
invertedbool
A table's colors can be inverted
paddedunion
A table may sometimes need to be more padded for legibility One of type:
  • enum
  • bool
selectablebool
A table can have its rows appear selectable
singleLinebool
A table can specify that its cell contents should remain on a single line, and not wrap.
sizestring
A table can also be small or large
sortablebool
A table may allow a user to sort contents by clicking on a table header. NOTE: You need to set "sorted descending"/"sorted ascending" class names for corresponding
element
stackableshape{ computer: false, mobile: false, tablet: false }
A table can specify how it stacks table content responsively
computer: bool
mobile: bool
tablet: bool
stripedbool
A table can stripe alternate rows of content with a darker color to increase contrast
structuredbool
A table can be formatted to display complex structured data
unstackableshape{ computer: false, mobile: false, tablet: false }
Reverse of stackable
computer: bool
mobile: bool
tablet: bool
valignedenum
A table header, row, or cell can adjust its vertical alignment One of:
  • center
  • right
widthnumber
Table width in grid columns

Table

A table displays a collections of data grouped into rows 4 Themes

Types

Table

A standard table

  • Tables will automatically stack their layouts for mobile devices. To disable this behavior, use the unstackable variation or tablet stackable to allow responsive adjustments for tablet.
Celled
HeaderHeaderHeader
First
CellCell
CellCellCell
CellCellCell
Padded
Evidence RatingEffectEfficacyConsensusComments
A
Power Output
80%
18 studies
Creatine supplementation is the reference compound for increasing muscular creatine levels; there is variability in this increase, however, with some nonresponders.
A
Weight
100%
65 studies
Creatine is the reference compound for power improvement, with numbers from one meta-analysis to assess potency.
Basic
EmployeeCorrect Guesses
Lena
Human Resources
22
Matthew
Fabric Design
15
Lindsay
Entertainment
12
Mark
Executive
11
Striped
Git Repository
node_modulesInitial commit10 hours ago
testInitial commit10 hours ago
buildInitial commit10 hours ago
package.jsonInitial commit10 hours ago
Gruntfile.jsInitial commit10 hours ago
Definition

A table may be formatted to emphasize a first column that defines a rows content

  • Definition tables are designed to display on a single background color. You can adjust this by changing @definitionPageBackground, or specifying a background color on the first cell

Celled & compact
NameRegistration DateE-mail addressPremium Plan
John LilkiSeptember 14, 2013jhlilk22@yahoo.comNo
Jamie HaringtonJanuary 11, 2014jamieharingonton@yahoo.comYes
Jill LewisMay 11, 2014jilsewris22@yahoo.comYes
Add User

Td

import { Td } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentunknowntd
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
alignedenum
Cell text alignment One of:
  • right
  • left
  • center
collapsingbool
A cell can be collapsing so that it only uses as much space as required
selectablebool
A table cell can be selectable
singleLinebool
Content should remain on a single line, and not wrap.
emphasisenum
Cell emphasis One of:
  • negative
  • positive
  • error
  • warning
valignedenum
Vertical cell alignment One of:
  • top
  • bottom
  • middle

Td

Tr

import { Tr } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
alignedenum
Cell text alignment One of:
  • right
  • left
  • center
collapsingbool
A cell can be collapsing so that it only uses as much space as required
selectablebool
A table cell can be selectable
singleLinebool
Content should remain on a single line, and not wrap.
emphasisenum
Cell emphasis One of:
  • negative
  • positive
  • error
  • warning
valignedenum
Vertical cell alignment One of:
  • top
  • bottom
  • middle
componentunknowntr
childrennode
Children nodes
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes

Tr

Collections - Message

Message

import { Message } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
attachedunion
A message can be formatted to attach itself to other content One of type:
  • enum
  • bool
colorstring
A message can be formatted to be different colors
compactbool
A message can only take up the width of its content.
floatingbool
A message can float above content that it is related to
hiddenbool
A message can be hidden
iconbool
A message can contain an icon. If message contain icon as first child then it will be set automatically, unless you provide it explicitly
sizestring
A message can have different sizes
emphasisenum
Another emphasis One of:
  • success
  • error
  • info
  • warning
  • positive
  • negative
visiblebool
Message is visible

Message

Have you heard about our mailing list?

Get the best news in your e-mail every day

Collections - Breadcrumb

import { Breadcrumb } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
sizeenum
A breadcrumb can vary in size Sizes
import { Divider } from 'semantic-react';
Open isolated ⇢

Divider for breadcrumb

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
import { Section } from 'semantic-react';
Open isolated ⇢

Breadcrumb section

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
activebool
Section may be active

Modules

Accordion

import { Accordion } from 'semantic-react';
Open isolated ⇢

Controlled accordion

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
animatingbool
Pass false to disable animation
activeIndexesunion[][]
Current visible content. Strings and numbers are accepted
fluidbool
React.PropTypes.arrayOf(React.PropTypes.oneOfType(React.PropTypes.string, React.PropTypes.number))
invertedbool
An accordion can be formatted to appear on dark backgrounds
onAccordionChangefunc() => { }
Callback when accordion wants to be changed
styledbool
A styled accordion adds basic formatting

Accordion

Accordion is controlled component, you need to manage active values byself.

This way you can have full control over accordion (you can have multiple active content for example) and reduces boilerplate logic from component

First
First content
Second
Second content
Inverted accordion

Here using strings for title keys instead numbers

First
First content
Second
Second content
Nested styled accordion
First
First content
Nested

Here is another accordion

Nested 1
First nested 1 content
Another Nested

And another...

Nested nested
Hello from deep nest

for simplifity state uses simple structure, you can use nested map for value state or anything what you'd like.

Multiple accordion

Since you're controlling values byself, you can display few secions at same time

First
First content
Second
Second content
Third
Third content
Four
Four content
Five
Five content

If don't need animation

First
First content
Second
Second content

Checkbox

import { Checkbox } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
labelClassNamestring
Apply additional class name to to the label
checkedbool
State checked
disabledbool
Does not allow user interaction
readOnlybool
It does disabled, but does not allow user interaction
onClickfunc() => { }
Callback handler to click checkbox
namestring
Attr name
typeenumdefault
Checkbox - appearance One of:
  • default
  • radio
  • toggle
  • slider
fittedbool
A fitted checkbox does not leave padding for a label

A checkbox allows a user to select a value from a small set of options, often binary

Types

Radio - a lot of

State

Read-only
Disabled

Dimmer

import { Dimmer } from 'semantic-react';
Open isolated ⇢

Dimmer

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
enterDurationunknown500
leaveDurationunknown300
enterunknownfade in
leaveunknownfade out
activeboolfalse
Hide/Display dimmer
pageboolfalse
Page dimmer. Doesn't require dimmable section
invertedboolfalse
Inverted dimmer
noWrapChildrenboolfalse
Disables auto-wrapping child contents into
closePortalfunc
internal

Dimmer

Simple dimmer
Overlayable section
Blurring / inverted dimmer
Overlayable section
Page dimmer
import { Dropdownmenu } from 'semantic-react';
Open isolated ⇢

Dropdown menu with animations

Props

NameTypeDefaultDescription
activeboolfalse
Active/Close menu
compactbool
A compact dropdown has no minimum width
disabledbool
A disabled dropdown menu or item does not allow user interaction
errorbool
An errored dropdown can alert a user to a problem
fluidbool
A dropdown can take the full width of its parent
inlinebool
A dropdown can be formatted to appear inline in other content
floatingbool
A dropdown menu can appear to be floating below an element.
loadingbool
A dropdown can show that it is currently loading data
pointingunion
A dropdown can be formatted so that its menu is pointing One of type:
  • bool
  • enum
scrollingbool
A dropdown can have its menu scroll
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
enterDurationunknown200
leaveDurationunknown200
enterunknownslide down in
leaveunknownslide down out
iconstringdropdown
Menu icon
labelstring
Menu label
menuComponentcustom
Specify component to be used as Menu. Usually is should be menu but with custom options applied (for example inverted). DropdownMenu will pass some props to your Menu component, so you're responsive for passing it down to the level
menuValueunion
Menu active value One of type:
  • number
  • string
  • union[]
onMenuChangefunc() => { }
Callback for active item change. Will not be fired if menuValue was omitted Will pass new menuValue or array of new menuValue If all items were unselected would pass null if menuValue is single value or empty array if menuValue is array
onMenuItemClickfunc() => { }
Callback for menu item click
onRequestClosefunc() => { }
Callback will be called when menu wants to be closed (for ex. from outside click)

Dropdown Menu behaves like menu but with dropdown!

You selected:

You can override menu or dropdown with custom menu or component

Option

import { Option } from 'semantic-react';
Open isolated ⇢

Select option. This should be used in

Props

NameTypeDefaultDescription
activebool
Is item active
disabledbool
Is item disabled
colorstring
Item color
menuValueunionRequired
Item value (used in controlled menu) One of type:
  • number
  • string
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
valueunionRequired
Option value One of type:
  • number
  • string

Option

Should be used in

Select

import { Select } from 'semantic-react';
Open isolated ⇢

Select is the dropdown where options could be selected, either single or multiple. Also supports search

Props

NameTypeDefaultDescription
activeboolfalse
Should be dropdown opened
compactbool
A compact dropdown has no minimum width
disabledbool
A disabled dropdown menu or item does not allow user interaction
errorbool
An errored dropdown can alert a user to a problem
fluidbool
A dropdown can take the full width of its parent
inlinebool
A dropdown can be formatted to appear inline in other content
floatingbool
A dropdown menu can appear to be floating below an element.
loadingbool
A dropdown can show that it is currently loading data
pointingunion
A dropdown can be formatted so that its menu is pointing One of type:
  • bool
  • enum
scrollingbool
A dropdown can have its menu scroll
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
enterDurationunknown200
leaveDurationunknown200
enterunknownslide down in
leaveunknownslide down out
namestring
Name for dropdown input
iconstringdropdown
Icon name for dropdown
placeholderstring
String used as placeholder if dropdown has no selected value Will be grayed (
) if dropdown is selection or normally displayed (
) otherwise
searchboolfalse
Searchable dropdown
searchGlyphWidthnumber1.0714
Search glyph width
searchIgnoreCasebooltrue
Ignore case when performing search
searchPositionenumdropdown
Search box position One of:
  • dropdown
  • menu
searchHeaderstring
Search header, valid only for searchPosition="menu"
searchNoResultsMessagestringNo Results found.
Specify message which will be displayed when search has no results
allowAdditionsMessagestringPress enter to add.
Specify message which will be displayed when search has no results and allowAdditions enabled
searchStringstring
Search string
selectedunion[][]
Selected value
selectionbooltrue
Behave dropdown as HTML select
multipleboolfalse
Allow multiple selection
allowAdditionsboolfalse
Allow to add custom options
onSelectChangefunc() => {}
Callback will be called when current selected value was changed. Will pass array of new selected values as first param and total options count as second
onRequestClosefunc() => {}
Callback will be called when selection dropdown wants to be closed. For now only for outside of dropdown clicks
onSearchStringChangefunc() => {}
Callback will be called when search string is being changed. You probably just need to pass it back to component

Select is the dropdown with ability to select one or few values

Simple select
Option could contain other markup
Selection with search
Selection with allowed additions
Multiple selection
Multiple search selection





Multiple selection with allowed additions

TODO: rewrite these examples

Dropdown could be used with custom component (Mainly with buttons):

simple button

labeled button

Search input could be in menu itself

With header

import { Modal } from 'semantic-react';
Open isolated ⇢

Modal is modal

Props

NameTypeDefaultDescription
activebooltrue
Should be modal visible
basicbool
A modal can reduce its complexity
fullscreenbool
A modal can use the entire size of the screen
scrollingbool
Scrolling content
sizestring
A modal can vary in size
closePortalfunc
Internal
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
enterDurationunknown500
leaveDurationunknown500
enterunknownscale in
leaveunknownscale out
dimmedenum
Dimmer variations One of:
  • blurring
  • inverted
  • blurring inverted
onRequestClosefunc() => {}
Callback from outside modal click
onModalOpenedfunc() => {}
Callback for modal opening
onModalClosedfunc() => {}
Callback for modal closing
zIndexnumber1000
Overlay zIndex

Modal

Standard modal
Basic modal
Custom animated
import { Popup } from 'semantic-react';
Open isolated ⇢

Popup with animations

Props

NameTypeDefaultDescription
basicbool
Basic popup variation
fluidbool
Fluid popup
flowingbool
No maximum width and continue to flow to fit its content
invertedbool
Inverted popup
sizeenum
Popup size One of:
  • mini
  • tiny
  • small
  • large
  • huge
wideunion
Make content of popup wide One of type:
  • bool
  • string
positionenumtop left
Popup position One of:
  • top left
  • top center
  • top right
  • right center
  • bottom right
  • bottom center
  • bottom left
  • left center
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
enterDurationunknown200
leaveDurationunknown200
enterunknownscale in
leaveunknownscale out
activeboolfalse
True to display the popup. If false will be hidden
autoPositionbooltrue
Auto position popup when needed
distanceAwaynumber0
Offset for distance of popup from element
lastResortPositionstring
Use this position when element fails to fit on screen in all tried positions If omitted, the last tried position will be used instead
offsetnumber0
Offset in pixels from calculated position
onRequestClosefunc() => {}
Callback when popup wants to be closed (i.e. when offscreen or clicked outside)
preferenumadjacent
When auto-positioning popup use opposite direction or adjacent as next position One of:
  • adjacent
  • opposite
preventElementClicksbooltrue
If true will prevent clicking on the other elements
requestCloseWhenOffScreenbooltrue
Hide popup when target element scrolls off the screen
targetobjectRequired
Target element to apply popup
zIndexnumber1000
Overlay zIndex

Popup:

Just a popup

Custom slide in/out animation

Rating

import { Rating } from 'semantic-react';
Open isolated ⇢

Rating

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
typeenumdefault
Rating type One of:
  • default
  • star
  • heart
sizeenum
Rating size One of:
  • mini
  • tiny
  • small
  • medium
  • large
  • big
  • huge
  • massive
maxnumber5
Rating max value
valuenumber0
Rating value
onChangefunc

Rating

Star rating

Heart rating

Sizes








import { Search } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
enterDurationunknown200
leaveDurationunknown200
enterunknownscale in
leaveunknownscale out
emptyHeaderstring
emptyMessagestring
iconunionsearch
One of type:
  • string
  • bool
loadingbool
onChangefuncRequired
onSearchClickfuncfunction noop() {}
placeholderstringSearch...
resultsunion
One of type:
  • array
  • object
valuestring

Search

A Search displays a collections of data grouped into list in popup 4 Themes

Types

No icon

Types results

List standard
List objects
Object lists

States

Loading

Tab

import { Tab } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
alignedenum
A segment can have its text aligned to a side One of:
  • right
  • left
  • center
attachedunionfalse
A segment can be attached to other content on a page One of type:
  • enum
  • bool
basicbool
A basic segment has no special formatting
blurringbool
Blurring segment when used with dimmer
clearingbool
A segment can clear floated content
colorstring
A segment can be colored
containerbool
Container segment
disabledbool
A segment may show its content is disabled
emphasisenum
A segment can be formatted to appear more or less noticeable One of:
  • primary
  • secondary
  • tertiary
floatedenum
A segment can appear to the left or right of other content One of:
  • right
  • left
invertedbool
A segment can have its colors inverted for contrast
loadingbool
True if display loading spinner
spacingenum
Segment spacing One of:
  • fitted
  • padded
typeenum
Segment type One of:
  • raised
  • stacked
  • piled
verticalbool
A vertical segment formats content to be aligned as part of a vertical group
zIndexnumber
Segment zIndex
styleunknown{}
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
activebool
True if tab is active. Being set automatically
valueunionRequired
Tab index value. Should be equal to one of MenuItem value One of type:
  • string
  • number

Actually it's tab content. Derived from Segment component

TabMenu

import { Tabmenu } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
attachedenum
A menu may be attached to other content segments One of:
  • top
  • bottom
borderlessbool
A menu item or menu can have no borders
evenbool
Use equal width for menu items
fittedunion
A menu item or menu can remove element padding, vertically or horizontally One of type:
  • bool
  • enum
fixedunion
A menu can be fixed to a side of its context One of type:
  • bool
  • enum
floatedenum
Float left or right One of:
  • right
  • left
fluidbool
A vertical menu may take the size of its container. (A horizontal menu does this by default)
colorstring
A menu can be formatted with different colors
invertedbool
A menu may have its colors inverted to show greater contrast
menuValueunion
Menu active value One of type:
  • number
  • string
  • union[]
onMenuChangefunc() => {}
Callback for active item change. Will not be fired if menuValue was omitted Will pass new menuValue or array of new menuValue If all items were unselected would pass null if menuValue is single value or empty array if menuValue is array
onMenuItemClickfunc() => {}
Callback for menu item click
paginationbool
A pagination menu is specially formatted to present links to pages of content
pointingbool
A menu can point to show its relationship to nearby content
secondarybool
A menu can adjust its appearance to de-emphasize its contents
tabularbool
A menu can be formatted to show tabs of information
textbool
A menu can be formatted for text content
verticalbool
A vertical menu displays elements vertically..
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes

Supports all menu props You don't need to put menuValue or onMenuChange properties. Tabs component will do it automatically

Tabs

import { Tabs } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
activeTabunionRequired
Active tab value One of type:
  • number
  • string
onTabChangefunc() => {}
Current tab want's to be changed

Note: Only tabs with attached menu are supported. If you don't need menu for tabs when you don't need to use tabs as well

Four tab is in loading state

First content
Second content
Third content
Four content

Loading tab

First content

Views

Card

import { Card } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
centeredbool
colstring
colorstring
doublingstring
fluidbool
linkbool
onClickfunc

Card

Cards

import { Cards } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
linkbool
onClickfunc

Cards

Comment

import { Comment } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes

Comment

Comments

import { Comments } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
collapsedbool
minimalbool
threadedbool

Comments

Event

import { Event } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes

Event

Feed

import { Feed } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
sizestring

Feed

Item

import { Item } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
imagestring
Item image
contentAlignedenum
Vertical alignment of content One of:
  • top
  • middle
  • bottom

Items

import { Items } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
dividedbool
Items can be divided to better distinguish between grouped content
linkbool
An item can be formatted so that the entire contents link to another page
relaxedcustom
A group of items can relax its padding to provide more negative space

Group of items

Header
Description
Additional details
Header
Description
Additional details
Header
Description
Additional details
import { Menu } from 'semantic-react';
Open isolated ⇢

Menu. Could be simple or controlled. Controlled menu will be activated by providing value property and will manage current active item and fire onChange callback when value was changed

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
attachedenum
A menu may be attached to other content segments One of:
  • top
  • bottom
borderlessbool
A menu item or menu can have no borders
evenbool
Use equal width for menu items
fittedunion
A menu item or menu can remove element padding, vertically or horizontally One of type:
  • bool
  • enum
fixedunion
A menu can be fixed to a side of its context One of type:
  • bool
  • enum
floatedenum
Float left or right One of:
  • right
  • left
fluidbool
A vertical menu may take the size of its container. (A horizontal menu does this by default)
colorstring
A menu can be formatted with different colors
invertedbool
A menu may have its colors inverted to show greater contrast
menuValueunion
Menu active value One of type:
  • number
  • string
  • union[]
onMenuChangefunc() => {}
Callback for active item change. Will not be fired if menuValue was omitted Will pass new menuValue or array of new menuValue If all items were unselected would pass null if menuValue is single value or empty array if menuValue is array
onMenuItemClickfunc() => {}
Callback for menu item click
paginationbool
A pagination menu is specially formatted to present links to pages of content
pointingbool
A menu can point to show its relationship to nearby content
secondarybool
A menu can adjust its appearance to de-emphasize its contents
tabularbool
A menu can be formatted to show tabs of information
textbool
A menu can be formatted for text content
verticalbool
A vertical menu displays elements vertically..

Menu:

Simple menu

Menu with active item

Menu can have few active items

Controlled menu

Selected: test1

You can wrap menuitem with custom component as well

import { Menuitem } from 'semantic-react';
Open isolated ⇢

Menu/Dropdown item

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
activebool
Is item active
disabledbool
Is item disabled
colorstring
Item color
menuValueunionRequired
Item value (used in controlled menu) One of type:
  • number
  • string

Menu Item used in menu or dropdown/select

Statistic

import { Statistic } from 'semantic-react';
Open isolated ⇢

Statistic is view of elements. It could be statistic view or part of view

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
valuecustom
A string or number that represents the value of statistic
labelcustom
A string or number that represents the label of a statistic
horizontalboolfalse
A statistic can present its measurement horizontally
colorenum
A SemanticUI color class. Colors
invertedboolfalse
Styles the component for a dark background.
floatedenum
Forces to component to float left or right. One of:
  • right
  • left
sizeenum
Adds a SemanticUI size class. Sizes

Statistic

A statistic can display a value with a label above or below it by the order you set.

Label below:

5,500
Downloads

Label above:

views
40,509

But you can build a default label-below Statistic by single-line:

5,500
Downloads

Horizontal Statistic

A statistic can present its measurement horizontally.

5,500
Downloads

Colored

A statistic can be formatted to be different colors

27
red
27
orange
27
yellow
27
olive
27
green
27
teal
27
blue
27
violet
27
pupple
27
pink
27
brown
27
grey

Inverted

27
red
27
orange
27
yellow
27
olive
27
green
27
teal
27
blue
27
violet
27
pupple
27
pink
27
brown
27
grey

Floated

2,204
Views

Te eum doming eirmod, nominati pertinacia argumentum ad his. Ex eam alia facete scriptorem, est autem aliquip detraxit at. Usu ocurreret referrentur at, cu epicurei appellantur vix. Cum ea laoreet recteque electram, eos choro alterum definiebas in. Vim dolorum definiebas an. Mei ex natum rebum iisque.

Audiam quaerendum eu sea, pro omittam definiebas ex. Te est latine definitiones. Quot wisi nulla ex duo. Vis sint solet expetenda ne, his te phaedrum referrentur consectetuer. Id vix fabulas oporteat, ei quo vide phaedrum, vim vivendum maiestatis in.

2,204
Views

Eu quo homero blandit intellegebat. Incorrupte consequuntur mei id. Mei ut facer dolores adolescens, no illum aperiri quo, usu odio brute at. Qui te porro electram, ea dico facete utroque quo. Populo quodsi te eam, wisi everti eos ex, eum elitr altera utamur at. Quodsi convenire mnesarchum eu per, quas minimum postulant per id.

Audiam quaerendum eu sea, pro omittam definiebas ex. Te est latine definitiones. Quot wisi nulla ex duo. Vis sint solet expetenda ne, his te phaedrum referrentur consectetuer. Id vix fabulas oporteat, ei quo vide phaedrum, vim vivendum maiestatis in.

Size

A statistic can vary in size.

2,204
Views
2,204
Views
2,204
Views
2,204
Views
2,204
Views
2,204
Views

Statistics

import { Statistics } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
evenbool
colorstring
sizestring

Statistics:

Statistic Group

22
faves
31,200
views
22
members

A statistic can contain a numeric, icon, image, or text value

5
Flights

Evenly Divided

22
saves
Three
Thousand
signups
42
Team Members

Value

import { Value } from 'semantic-react';
Open isolated ⇢

Props

NameTypeDefaultDescription
childrennode
Children nodes
componentcustomdiv
Use other component for composing results:
defaultClassesbooltrue
Apply default semantic UI classes for component, for example ui button
classNamestring
Additional CSS ui classes
textboolfalse
Text value

Value

A Value can render as text.

Three
Thousand
Signups