Icon fonts ΒΆ

TED uses an icon font to produce scalabale, vector-based icons throughout the site.

Here is a complete list of the currently available icons:

action-attend
action-connect
action-download
action-follow
action-join
action-learn
action-organize
action-participate
action-petition
action-quote
action-share
action-signup
action-subscribe
action-visit
action-volunteer
arrow-alt-left
arrow-alt-right
arrow-left
arrow-right
barchart
checkmark
circle-check
circle-download
circle-email-fill
circle-email
circle-embed-fill
circle-embed
circle-facebook-fill
circle-facebook
circle-favorite-fill
circle-favorite
circle-googleplus
circle-help-fill
circle-ig-fill
circle-left
circle-linkedin
circle-more-fill
circle-more
circle-play
circle-rate
circle-right
circle-share
circle-twitter-fill
circle-twitter
circle-watchlater-fill
circle-watchlater
close-small
control-cog
control-fullscreen-exit
control-fullscreen
control-mute
control-pause
control-play
control-playlist
control-skip
control-subtitles
control-transcript
control-unskip
control-volume
corrections
facebook
flag
flickr
footnotes
item-book
item-globe
item-speaker
item-text
item-video
link
message
outbound
page-dot-off
page-dot-on
pencil
photo-credits
photo
pin
reading-list
reply
search
subtitle
transcript
twitter
upvote
x
youtube

Use in HAML

To include icons in your HAML, please use the icon helper:

= icon 'arrow', 'Arrow label'

The first parameter should be the icon's name, per the icon grid above.

The second parameter is a label. This won't be rendered visibly, but will be announced by screen readers parsing the HTML output. It's only necessary when your icon is otherwise unlabeled.

You can also include an options object with an additional CSS class to be added to the icon element:

= icon 'arrow', :class => 'my-arrow'

Use in Handlebars (JavaScript templating)

A Handlebars helper is also available:

{{icon 'arrow'}}

The Handlebars helper supports two more parameters: a screen reader label (like the markdown helper), and any additional CSS classes as a string:

{{icon 'arrow' 'Arrow Label' 'my-arrow'}}

If you'd like to include an additional CSS class but don't need a screen reader label, please use an empty string as the second parameter:

{{icon 'arrow' '' 'my-arrow'}}

Sass mixins

By default, icons are sized at 40px. To change their size, please give them a special CSS class (using the helpers above) and then target that class in your Sass to specify a size using the icon-size mixin:

.my-arrow {
  @include icon-size(60px);
}