Spreadsheet

The Spreadsheet allows you to edit and visualize tabular data by using cell formatting options, styles, and themes.

Accessibility Support

Out of the box, the Telerik and Kendo UI Spreadsheet provides extensive accessibility support and enables users with disabilities to acquire complete control over its features.

The Spreadsheet is compliant with the Web Content Accessibility Guidelines (WCAG) 2.2 standards and Section 508 requirements, follows the Web Accessibility Initiative - Accessible Rich Internet Applications (WAI-ARIA) best practices for implementing the keyboard navigation for its component role, provides options for managing its focus and is tested against the most popular screen readers.

WAI-ARIA

This section lists the selectors, attributes, and behavior patterns supported by the component and its composite elements, if any.

The Spreadsheet is a composite component that is used to render spreadsheet data and provide the proper means for its editing. It consists of the following structural elements:

  • Quick access elements - Undo and Redo buttons
  • Menu
  • ToolBars
  • Name editor
  • Formula input
  • Sheet area
  • Sheets bar Add Button
  • Sheets bar Menu Button
  • Sheets bar TabStrip

SpreadSheet Wrapping Element

SelectorAttributeUsage
.k-spreadsheetrole=applicationIndicates the Spreadsheets' role as an application.

Quick access elements

SelectorAttributeUsage
.k-spreadsheet-quick-access-toolbar>.k-buttonrole=buttonThe two quick access elements are buttons.
aria-label or titleThe two quick access elements must have labels as they do not have text content.

ToolBar Menu

The Menu used for selecting the active ToolBar must implement the Menu specification.

ToolBars

All ToolBars must implement the ToolBar specification. Apart from that, they also need to be labeled as per their purpose.

SelectorAttributeUsage
.k-spreadsheet-toolbararia-label or titleEach ToolBar must have a label specifying its purpose.

Name editor

The Name editor must implement the spec for a ComboBox component.

Formula input

SelectorAttributeUsage
.k-spreadsheet-formula-inputaria-haspopup=menuSpecifies that the formula input opens a popup.
aria-controls=.k-spreadsheet-formula-list idPoints to the formulas list with role menu. Signifies that the formula input element controls the popup.
aria-expanded=true/falseAnnounces the state of the popup visibility.
titleThe Formula input of the Spreadsheet must have a title specifying its purpose.
role=comboboxThe focusable element of the component should have role combobox (an input with popup).

Formula list

SelectorAttributeUsage
.k-spreadsheet-formula-listidUnique and deterministic id linked to the aria-controls attribute of the corresponding formula input.
.k-spreadsheet-formula-listrole=menuAnnounces the menu role of the popup.
.k-list-itemrole=menuitemAnnounces the menuitem role of the popup items.

Sheet area

The Sheet area must implement the spec for a Grid component. The column header cells are header cells are the members of the .k-spreadsheet-column-header element. The row header cells are the members of the .k-spreadsheet-row-header element.

Add new sheet button

SelectorAttributeUsage
.k-spreadsheet-sheet-add:not(button)role=buttonThe add new sheet element is a button.
.k-spreadsheet-sheet-addaria-label or titleThe add new sheet element must have a label as it does not have text content.
.k-spreadsheet-sheet-addaria-controls=.k-tabstrip-items idPoints to the ul element of the TabStrip that contains all tabs. Signifies that the button element controls the tablist one.

Menu sheet button

The Menu sheet button must implement the spec for a DropDownButton component.

SelectorAttributeUsage
.k-spreadsheet-sheets-menuaria-controls=.k-tabstrip-items idPoints to the ul element of the TabStrip that contains all tabs. Signifies that the button element controls the tablist one.

Sheets bar

The Sheets bar of the Spreadsheet must implement the TabStrip specification.

Tab Menu button

The Menu button is each TabStrip tab must implement the DropDownButton specification.

Managing the Focus

The Spreadsheet component is a container that consists of several logically separated structural elements:

  • Quick access elements Undo and Redo buttons
  • Menu
  • ToolBars
  • Name editor
  • Formula input
  • Sheet area
  • Sheets Bar

Each of them is part of the page tab sequence and can be navigated to using the Tab key of the keyboard. The list above illustrates the focus sequence. The only exception is the Sheet area which implements its own inner Tab-based navigation.

Upon opening any of the Spreadsheet Dialogs, the focus must move to the Dialog and navigation must be trapped within the Dialog. Upon closing the dialog if a manipulation on the Spreadsheet cell has been performed, focus must move to that cell. If no manipulation has been performed, focus must return to the Tool of the ToolBar that has opened the Dialog.

The ToolBars implement the keyboard navigation specification for a ToolBar component.

The Name editor implements the keyboard navigation specification for a ComboBox component.

The Sheets Bar elements are part of the page tab sequence.

Keyboard Shortcuts

Shortcuts applicable to the content of the Spreadsheet

ShortcutBehavior
Ctrl+CCopies the selected cells (range).
Ctrl+VInserts copied or cut cells to a selected location within the worksheet.
Ctrl+XCuts the selected cells (range).
Ctrl+YRepeats the last action if possible by using the Redo command.
Ctrl+ZReverses the last action if possible by using the Undo command.
DeleteIn the Formula bar, deletes the character to the right of the insertion point from the formula text. In cell selection mode, removes the content from selected cells without affecting cell formats. In cell editing mode, deletes the character to the right of the insertion point.
BackspaceIn the Formula bar, deletes one character to the left from the formula text. In cell selection mode, removes the content of the active cell. In cell editing mode, deletes the character to the left of the insertion point.

Selection shortcuts

ShortcutBehavior
Ctrl+select a cellSelects an adjacent or non adjacent cell.
Ctrl+select cellsSelects a range of adjacent or non adjacent.
Ctrl+ASelects the whole worksheet.
Ctrl+select a row or columnSelects an adjacent or nonadjacent row or column.
Ctrl+select rows or columnsSelects a range of adjacent or non adjacent rows or columns.
Shift + Arrow KeySelects a range of adjacent cells, rows or columns by extending the selection by one cell, row or column.
Ctrl + Shift + Arrow KeyExtends the selection of cells to the last cell of the current series of data. If there is another set of data afterwards, the cell selection will be extended to the first cell of the new series of data. Otherwise, the cell selection will be extended to the last cell of the worksheet in the corresponding direction.
Down / Up ArrowIn a menu or submenu, selects the next or previous command.
Ctrl + Shift + EndIn cell selection mode, extends the selection of cells to the last cell on the worksheet located in bottom-right corner. In the formula bar, selects all text in the formula bar from the cursor position to the end.
Ctrl + Shift + HomeExtends the selection of cells to the beginning (the top-left cell) of the worksheet. In the formula bar, selects all text in the formula bar from the cursor position to the beginning of the input.

Navigation shortcuts

ShortcutBehavior
Ctrl + Arrow KeyNavigates to the end of the current series of data. If there is another set of data afterwards, the first cell of the new series will be selected. Otherwise, you will be navigated to the last cell of the worksheet in the corresponding direction.
Arrow KeysMove one cell up, down, right of left in the worksheet.
Shift + TabIn cell selection mode, moves to the previous cell in a worksheet. If the currently active cell is the first cell (the top-left cell) in the Sheet, pressing Shift + Tab will move the focus outside of the Sheet to the Named ranges ComboBox. In a dialog box, moves to the previous focusable element. In range selection of cells, rows or columns, moves to the previous cell within the active range. If the focus is on the first cell (the top-left cell) in the range (the top-left), the focus will return to the last (the bottom-left) cell in the range.
TabIn cell selection mode, moves one cell to the right in a worksheet. If the currently active cell is the last cell (the bottom-right cell) in the Sheet, pressing Tab will move the focus outside of the Sheet cells to the next focusable element on the page. In a dialog box, moves to the next focusable element in the Dialog. In range selection of cells, rows or columns, moves to the next cell within the active range. If the focus is on the last cell (the bottom-right cell) in the range, the focus will return to the first cell.
Page DownMoves one screen down in a worksheet.
Page UpMoves one screen up in a worksheet.
HomeIn cell selection mode, moves to the beginning of a row in a worksheet. In a menu or submenu, selects the first command.
Ctrl + HomeIn cell selection mode, moves to the first cell (the top-left cell) on a worksheet. In the Formula Bar, moves the cursor to the beginning of the text.
EndIn cell selection mode, moves to the far right cell of the active row. In a menu or submenu, selects the last command.
Ctrl + EndIn cell selection mode, moves to the last cell on a worksheet, in the lowest used row of the used column on the bottom-right. In the Formula Bar, moves the cursor to the end of the text.

Other shortcuts

ShortcutBehavior
Alt + SpaceDisplays the Control menu for the Spreadsheet window.
SpaceIn a dialog box, performs the action for the selected button, or selects or clears a check box.
EnterIn cell editing mode or in the formula bar, completes a cell entry and selects the cell below. In a data form, it moves to the first field in the next record. In the command toolbar, executes the active action. In a dialog box, performs the action for the default command button in the dialog box.
EscIn cell editing mode or in the Formula bar, cancels an entry in the cell or Formula Bar. Closes an open menu or submenu, dialog box or message window.
Alt + HDisplays the Home tab on the ToolBar.
Alt + NDisplays the Insert tab on the ToolBar.
Alt + ADisplays the Data tab on the ToolBar.
Ctrl (Cmd on MacOS) + Page UpActivates the previous sheet from the SheetBar if such exists.
Ctrl (Cmd on MacOS) + Page DownActivates the next sheet from the SheetBar if such exists.

Sheets Bar

ShortcutBehavior
TabMoves the focus to the next focusable element in the Sheets Bar. If the last element is focused, pressing Tab will move the focus outside of the Spreadsheet.
Shift + TabMoves the focus to the previous focusable element in the Sheets Bar. If the first element is focused, pressing Tab will move the focus to the Sheet area.

Sheets Bar TabStrip

The SheetsBar TabStrip must implement the TabStrip component keyboard navigation. Each focused tab should support the following key shortcuts:

ShortcutBehavior
Alt (or Opt on Mac) + Down ArrowOpens the actions DropDownButton popup for the current active tab.

The button in each tab must implement the DropDownButton component keyboard navigation.

Testing

The Spreadsheet has been extensively tested automatically with axe-core and manually with the most popular screen readers.

Screen Readers

The Spreadsheet has been tested with the following screen readers and browsers combinations:

EnvironmentTool
FirefoxNVDA
ChromeJAWS
Microsoft EdgeJAWS