Applications on Node.js stack will not receive the eBay Market Sans font as the default font. Applications must use the ebay-font loader.
Websites utilising Skin via CDN will have the eBay Market Sans font as the default font.
Paragraph without Market Sans
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Paragraph with Market Sans
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Link States
The states below are hardcoded for the purpose of this demo.
NOTE: this module requires the lasso-less plugin in your project's dependencies.
Typography
.ds6-typography-giant-2
.ds6-typography-giant-1
.ds6-typography-large-2-bold
.ds6-typography-large-2
.ds6-typography-large-2-secondary
.ds6-typography-large-1-bold
.ds6-typography-large-1
.ds6-typography-large-1-secondary
.ds6-typography-medium-bold
.ds6-typography-medium
.ds6-typography-medium-secondary
.ds6-typography-regular-bold
.ds6-typography-regular
.ds6-typography-regular-secondary
.ds6-typography-small-bold
.ds6-typography-small
.ds6-typography-small-secondary
Color Palette
@ds6-color-g201-gray (#ffffff)
@ds6-color-g202-gray (#f5f5f5)
@ds6-color-g203-gray (#e5e5e5)
@ds6-color-g204-gray (#c7c7c7)
@ds6-color-g205-gray (#767676)
@ds6-color-g206-gray (#111820)
@ds6-color-p001-blue (#e1fbff)
@ds6-color-p002-blue (#006efc)
@ds6-color-p003-blue (#10299c)
@ds6-color-p004-blue (#4295ff)
@ds6-color-p011-red (#ffe7ec)
@ds6-color-p012-red (#ff5151)
@ds6-color-p013-red (#c9002c)
@ds6-color-p021-yellow (#fffaab)
@ds6-color-p022-yellow (#ffd80d)
@ds6-color-p031-green (#ebffcc)
@ds6-color-p032-green (#71c63e)
@ds6-color-p033-green (#147133)
Product Usage
@ds6-color-text-default
@ds6-color-text-secondary
@ds6-color-link-default
@ds6-color-link-visited
@ds6-color-information-background
@ds6-color-badge
@ds6-color-star
@ds6-color-warning-background
@ds6-color-critical-text
@ds6-color-critical-background
@ds6-color-confirmation-text
@ds6-color-confirmation-background
@ds6-color-background-default
@ebay/skin/breadcrumb
Breadcrumbs are a navigational landmark that let the user discover their current position in the site hierarchy and provide a means to navigate upwards through that hierarchy.
Typically, the last breadcrumb is the current page, and therefore it should not be a link.
If the last breadcrumb is not the current page, then it must be a link.
@ebay/skin/button
A button is typically used to trigger a JavaScript action (e.g. fetch results, open a dialog or expand a menu). In this case, the <button> tag is required.
A button may also be used to natively (i.e. no JavaScript required) submit or reset a form. In this case use the <button> tag with type=submit or type=reset respectively. Use of the <input> tag is not currently supported.
Finally, a link may be styled to look like a button. In this case the <a> tag is required with a valid HREF attribute. Please see the fake button section below for more details.
Raw Button
Use the raw button as the base to build custom modifiers.
Primary Button
Disabled Primary Button
Secondary Button
Disabled Secondary Button
Fluid Button
Small Button
Large Button
CTA Button
Takes users to another URL destination (i.e. it is a hyperlink, not actually a button).
Typically used to expand additional content (inline or overlay).
Can also be used with or without a text label.
Icon Button
An icon can be placed adjacent to the button text.
@ebay/skin/checkbox
A checkbox is a form control that allows the user to toggle a choice on or off.
The purpose of a checkbox is to collect form data; therefore a checkbox should always be used in conjunction with a form, label and submit button.
Default Checkbox
Use the checkbox base class to create a checkbox.
The checkbox is decoupled from it's real text label to allow more flexibility in terms of layout. How and where you provide this label is up to you, but do not forget it!
Disabled Checkbox
Use the disabled attribute to disable any checkbox input.
Grouped Checkboxes
A group of checkboxes allows multi-select (unlike a group of radio buttons which enforces single-select).
A fieldset and legend are required in order to create the correct grouping semantics. Note that the Skin global module removes the default fieldset border and padding.
TIP: To stack checkboxes vertically instead of side-by-side, simply replace the span wrapper with a div wrapper.
Custom Colour Checkbox
The default checkbox shown above uses an SVG background image, and therefore has a fixed colour. Inline SVG, while slightly more verbose, honours the CSS cascade, thus allowing any possible colour for the checkbox icon.
NOTE: The hidden attribute ensures that the SVG icon is not visible if the page is in a non-CSS state; it also helps prevent a flash of unstyled content (FOUC).
Custom Icon Checkbox
The checkbox module can use any inline SVG for it's checked and unchecked states.
Be careful when using a custom checkbox; the icon for each state must still give enough affordance to a user that it represents an interactive control.
@ebay/skin/color
Static sites that do not have access to the LESS variables can leverage the color palette via the color module.
Please reference the LESS module for all available colours. Please note, that the class names emit the "ds6-" prefix.
@ebay/skin/combobox
The Skin combobox is intended for use as a custom view (or facade) for the native HTML select element. JavaScript will be required to create 2-way binding between the two.
This version of the combobox is read-only. In the near future we will launch a true combobox, with type-ahead and type-to-add capabilities.
Note: Because the combobox uses an input element, which must grow to properly display it's contents, we have chosen to have the combobox always remain fluid. It is up to the developer to contain the width, if necessary. Extra care will be needed when placing a combobox side-by-side with other controls such as buttons and textboxes.
Default read-only combobox
By default, the first item should be selected if the user does not specify a selection. This matches the behavior of a native HTML select element.
Option 1
Option 2
Option 3
Selected read-only combobox
Option 1
Option 2
Option 3
Borderless read-only combobox
Option 1
Option 2
Option 3
@ebay/skin/dialog
A dialog is a child window spawned by the main web page or application. This window forms a new background layer in our design system topography.
A dialog must remain in a hidden state for all users and devices until called upon.
All dialogs have support for optional CSS transition effects. See dialog transitions section for more details.
Default Dialog
The default dialog is a lightbox.
The lightbox will have a margin of 15vh and automatically scales vertically.
Heading
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Apply the dialog__window--fill modifier to have the lightbox fill at least 70% of the screen (centered vertically).
Heading
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Apply the dialog__window--left modifier to have the dialog act as a left side panel (100vh height and aligned to the left side of the screen).
Heading
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Apply the dialog__window--right modifier to have the dialog act as a right side panel (100vh height and aligned to the right side of the screen).
Heading
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Apply the dialog__window--full modifier to have the dialog take up the entire viewport.
Having a mask on a fullscreen dialog doesn't typically make sense and can cause the animations to look a bit strange. You can disable the default background mask of the dialog by applying the dialog--no-mask modifier on the dialog element.
Heading
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Skin currently supports two types of dialog transition: fade and slide.
Because CSS cannot transition an element to and from hidden (i.e. "display:none"), transitions are acheived using two classes applied during different stages of the animation.
Before applying an animation class to the dialog component you must first apply the primer class which will be $name-init where $name is the base class.
The dialog component has two different animation base classes dialog--show and dialog--hide.
Firstly the -init postfix must be applied to dialog component to prime animation.
One animation frame later the -init postfix must be removed and the base class applied to start the animation.
Finally once the animation has completed remove the base class.
An example implementation is shown below.
Fade Transition
Any dialog window and mask can be faded in and out, using the dialog__window--fade modifier on the dialog__window and a dialog--mask-fade modifier on the dialog.
The default fade duration is 16ms.
Heading
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Any panel or fullscreen dialog can slide in and out, using the dialog__window--slide modifier on the dialog__window.
The slide transition duration is 32ms. An accompanying dialog--mask-fade-slow modifier on the dialog should also be applied. This slower fade matches the 32ms of the slide transition.
Heading
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
The label module consists of a "floating label" for textbox. Floating labels appear to sit inside the textbox when it has no value or focus, and sit above the textbox otherwise.
Floating Label with no Value
If the textbox has no value, the label can be positioned inside the textbox.
Floating Label with Value
If the textbox has a value, the label must be positioned above the textbox.
Floating Label with Placeholder
The placeholder always remains obscured until the textbox gains focus.
Floating Label with Disabled Textbox
Use the disabled property & floating-label__label--disabled modifier on the input element and the label element respectively to disable the input.
Floating Label with Invalid Textbox
Set the aria-invalid property to true to semantically and visually highlight the invalid state.
Floating Label Transitions
By default, with only the base markup shown above, the label remains in a floating state above the input. This default state ensures that the label does not obscure the textbox value while we wait for JavaScript.
When JavaScript is ready, the label can be re-positioned inside the textbox by adding the floating-label__label--inline modifier class. By default, this re-positioning of label happens instantly, without a transition. Typically, we do not want to show transitions on the initial page render, as this might be too jarring and distracting for some users.
To opt into transitions after the initial render is complete, add the floating-label__label--animate modifier when the textbox receives focus.
The examples above use makeup-floating-label, a simple JavaScript module that adds the aforementioned logic. Feel free to use this module or use it as the basis to roll your own.
@ebay/skin/icon
The icon module allows direct access to the Skin iconography via inline SVG or background SVG.
Inline SVG
Inline SVGs can inherit their colour via the CSS cascade; this behaviour can be useful when crafting custom buttons and controls.
To avoid gigantic icons when in a non-CSS (edge-case) state, we use the SVG width and height attributes to override the browser's default 300x150 size.
Background SVG
Background SVGs have a fixed colour that cannot be changed via CSS.
List of available icons
Arrows
#icon-arrow-left
.icon--arrow-left
#icon-arrow-right
.icon--arrow-right
#icon-arrow-move
.icon--arrow-move
#icon-arrow-right-bold
.icon--arrow-right-bold
Chevrons
#icon-chevron-up
.icon--chevron-up
#icon-chevron-down
.icon--chevron-down
#icon-chevron-left
.icon--chevron-left
#icon-chevron-right
.icon--chevron-right
#icon-chevron-up-bold
.icon--chevron-up-bold
#icon-chevron-down-bold
.icon--chevron-down-bold
Filters
#icon-filter-grid
.icon--filter-grid
#icon-filter-single
.icon--filter-single
#icon-filter-list
.icon--filter-list
Forms
#icon-checkbox-unchecked
.icon--checkbox-unchecked
#icon-checkbox-checked
.icon--checkbox-checked
#icon-radio-unchecked
.icon--radio-unchecked
#icon-radio-checked
.icon--radio-checked
#icon-tick
.icon--tick
Navigation
#icon-menu
.icon--menu
#icon-close
.icon--close
#icon-cart
.icon--cart
#icon-notification
.icon--notification
#icon-search
.icon--search
#icon-search-bold
.icon--search-bold
#icon-overflow
.icon--overflow
Navigation support
#icon-bids
.icon--bids
#icon-categories
.icon--categories
#icon-deals
.icon--deals
#icon-download
.icon--download
#icon-event
.icon--event
#icon-help
.icon--help
#icon-home
.icon--home
#icon-info
.icon--info
#icon-messages
.icon--messages
#icon-profile
.icon--profile
#icon-purchases
.icon--purchases
#icon-selling
.icon--selling
#icon-settings
.icon--settings
#icon-watch
.icon--watch
#icon-following
.icon--following
#icon-send
.icon--send
#icon-refresh
.icon--refresh
#icon-add
.icon--add
#icon-sign-out
.icon--sign-out
#icon-user-profile
.icon--user-profile
#icon-flag
.icon--flag
Photo editor
#icon-photo-rotate
.icon--photo-rotate
#icon-photo-crop
.icon--photo-crop
#icon-photo-select-all
.icon--photo-select-all
#icon-photo-select-none
.icon--photo-select-none
#icon-photo-brightness
.icon--photo-brightness
#icon-photo-gallery
.icon--photo-gallery
#icon-photo-gallery-more
.icon--photo-gallery-more
#icon-delete
.icon--delete
Programs
#icon-top-seller
.icon--top-seller
#icon-fast-n-free
.icon--fast-n-free
Reviews
#icon-thumbs-up
.icon--thumbs-up
#icon-thumbs-up-selected
.icon--thumbs-up-selected
#icon-thumbs-down
.icon--thumbs-down
#icon-thumbs-down-selected
.icon--thumbs-down-selected
Save
#icon-save
.icon--save
#icon-save-bold
.icon--save-bold
#icon-save-selected
.icon--save-selected
Search
#icon-camera
.icon--camera
#icon-mic
.icon--mic
#icon-clear
.icon--clear
#icon-red-laser
.icon--red-laser
All inline icons
All background icons
@ebay/skin/link
The link module is a bit unusual in that it has no base class; this is because all anchor tags are styled, by default, by the global module.
The default link is used inline, amongst sentences and paragraphs of text. The underline gives visual affordance that this selection of text is a hyperlink. Color alone is not sufficient affordance in this context and therefore the underline is required and must not be removed.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
Action Link
Action links remove the default underline, and therefore clickability must clearly and easily be perceivable via other visual affordances (e.g. call to action text, placement, or other such contextual clues).
Action links are commonly used within item tiles and provide a means to drill-down into additional aspects such as seller page and reviews.
Nav links remove the default underline and colour. Again, clickability must clearly and easily be perceivable via other visual affordances (e.g. headings, spacing or other such contextual clues).
Nav links are typically used in blocks of navigation within sidebars, allowing the user to navigate the site hierarchy.
@ebay/skin/menu
A menu follows the principal of progressive disclosure, it keeps secondary commands hidden from view until needed.
A menu is not a form control. If you wish to submit form data, please consider checkbox, listbox or radio instead.
Selecting a menu item command should update the page without a full page reload (i.e. acting similar to buttons, checkboxes or radios). If a full page load is required instead (i.e. acting like links), please refer to the fake menu.
Item 1 with a long string
Item 2
Item 3
TIP: Use the
menu__items--reverse or
fake-menu__items--reverse element modifier to fly out the menu overlay in reverse direction.
Radio Menu
For single-select state, use role menuitemradio on each menu item.
Item 1
Item 2
Item 3
Checkbox Menu
For multi-select state, use role menuitemcheckbox on each menu item.
Item 1
Item 2
Item 3
Fake Menu
A fake menu looks like a normal menu widget, but it contains a list of hyperlinks (instead of a menu of menuitems) and thus behaves more like a navigational widget.
A valid HREF attribute is required for all anchor tags. A value of "javascript" (or any such variant) is not a valid URL!
Use the aria-current attribute to denote the link that matches the current page URL (if applicable).
TIP: A fake menu can contain a mix of anchor tags and button tags.
Fixed Width Menu
Use the menu__items--fix-width or fake-menu__items--fix-width element modifier to fix the width of any menu items to the button width. This is useful in cases where the menu overlay needs to be constrained to the button width, usually to accomodate spacing and layout.
NOTE: The fix-width modifier only works on menus that use a span tag.
Item 1 with a long string
Item 2
Item 3
Borderless Menu
Use the expand-btn--borderless element modifier on the expand button
to allow for a borderless version of the expand button.
Item 1
Item 2
Item 3
Custom Menu
Any menu can use any kind of button hierarchy as defined in the button module (e.g. .expand-btn--primary).
Menu item 1
Menu item 2
Menu item 3
Menu item 1
Menu item 2
Menu item 3
For custom background and foreground colours, please replace the icon's span element with an inline SVG element:
Menu item 1
Menu item 2
Menu item 3
@ebay/skin/notice
The purpose of a notice is to convey the next course of action for a task or flow. The notice must be clear and concise, with minimum cognitive load.
A notice may appear at page-level or inline-level, with a status of priority, confirmation, or information.
Page Notice
A page-level notice typically appears prominently at the top of the page or directly above a module. To aid discoverabilty of such important content for assistive technology, we make each page notice a landmark region with heading.
Pagination allows a user to navigate back and forwards through a URL based dataset, or jump directly to any specific
URL in that set.
Pagination links may update the results immediately on the client via AJAX, or on the server via a full page reload.
Fluid Pagination
Apply the pagination--fluid modifier class to fill all available horizontal space. Horizontal space will be distributed around each pagination item as necessary.
NOTE: The heading need only be wrapped in an ARIA live-region if client-side pagination is implemented (i.e. partial page updates).
@ebay/skin/radio
A radio button is a form control that allows a user to select a single option from a group of choices.
The purpose of a radio button is to collect form data. Therefore, radio buttons should always be used in conjunction with a form, label and submit button.
Default Radio
Use the radio base class to create a styled radio.
The radio is decoupled from it's real text label to allow more flexibility in terms of layout. How and where you provide this label is up to you, but do not forget it!
Disabled Radio
Use the disabled attribute to disable any radio input.
Grouped Radio
A group of radios enforces single-select (unlike a group of checkboxes which allows multi-select).
A fieldset and legend are required in order to create the correct grouping semantics. Note that the Skin global module removes the default fieldset border and padding.
TIP: To stack radio buttons vertically instead of side-by-side, simply replace the span wrapper with a div wrapper.
Custom Colour Radio
The default radio shown above uses an SVG background image, and therefore has a fixed colour. Inline SVG, while slightly more verbose, honours the CSS cascade, thus allowing any possible colour for the radio icon.
NOTE: The hidden attribute ensures that the SVG icon is not visible if the page is in a non-CSS state; it also helps prevent a flash of unstyled content (FOUC).
Custom Icon Radio
The radio module can use any inline SVG for it's checked and unchecked states.
Be careful when using a custom radio; the icon for each state must still give enough affordance to a user that it represents an interactive control.
@ebay/skin/select
Default select
Selected option
Borderless select
@ebay/skin/svg
The SVG module imports an external SVG source file containing all symbol definitions. However, due to a lack of browser support for external SVG definitions, we recommend not using this module for now and instead inlining (i.e. copy & pasting) all required definitions from below into a hidden SVG block on your page.
Please view the icon module for instructions on how to reuse and display these symbol definitions anywhere on the page.
Notice that we use the SVG viewBox attribute to crop out any arbitrary whitespace around the icon path(s). This allows us to leverage CSS to fine-tune whitespace instead.
@ebay/skin/textbox
A textbox (also known as an input) allows the user to enter data.
The purpose of a textbox is to collect form data. Therefore, textbox should always be used in conjunction with a form, label and submit button.
IMPORTANT: The examples below show the textbox in isolation, without any label. Remember: every textbox requires a label!
Single-Line Textbox
Use an input tag for a single-line textbox.
Disabled Textbox
Use the disabled attribute to disable any input.
Textbox with error
Use the aria-invalid attribute to highlight any input with error.
Multi-line Textbox
Use the textarea tag for a multi-line textbox.
A multi-line textbox allows line breaks and has a minimum height of 200px.
Fluid Textbox
Apply the textbox__control--fluid modifier (or fluid utility class) to fill the width of the parent element.
Textbox with Icon
Single-line textboxes can be augmented with any inline SVG icon, using a textbox__icon element before the control. Font-icons are no longer supported.
Use textbox--icon-end modifier to position the icon after the control.
NOTE: The icon is presentational, and therefore hidden from assistive technology using aria-hidden. Remember, the purpose of the field must be conveyed using a label.
Underline Textbox
Use textbox__control--underline modifier to style the textbox with only a bottom border to be used in conjuction with floating labels.
Please see the label module for details on labelling controls. Remember: every textbox requires a label!
@ebay/skin/typography
Static sites that do not have access to LESS preprocessor can leverage the Skin type ramp via the typography module.
.giant-text-2
.giant-text-1
.large-text-2
.large-text-1
.medium-text
.regular-text
.small-text
With the exception of giant text, which is always bold, all other entries in the type ramp can be set to bold-text or secondary-text by adding the relevant class: