diff --git a/src/demo-app/a11y/a11y-module.ts b/src/demo-app/a11y/a11y-module.ts
index 4f7e455a8bd..4df81e7693f 100644
--- a/src/demo-app/a11y/a11y-module.ts
+++ b/src/demo-app/a11y/a11y-module.ts
@@ -5,6 +5,7 @@ import {RouterModule} from '@angular/router';
import {ACCESSIBILITY_DEMO_ROUTES} from './routes';
import {DemoMaterialModule} from '../demo-material-module';
import {AccessibilityDemo, AccessibilityHome} from './a11y';
+import {AutocompleteAccessibilityDemo} from './autocomplete/autocomplete-a11y';
import {ButtonAccessibilityDemo} from './button/button-a11y';
import {ButtonToggleAccessibilityDemo} from './button-toggle/button-toggle-a11y';
import {CheckboxAccessibilityDemo} from './checkbox/checkbox-a11y';
@@ -13,7 +14,8 @@ import {GridListAccessibilityDemo} from './grid-list/grid-list-a11y';
import {RadioAccessibilityDemo} from './radio/radio-a11y';
import {DatepickerAccessibilityDemo} from './datepicker/datepicker-a11y';
import {InputAccessibilityDemo} from './input/input-a11y';
-import {AutocompleteAccessibilityDemo} from './autocomplete/autocomplete-a11y';
+import {SliderAccessibilityDemo} from './slider/slider-a11y';
+
@NgModule({
imports: [
@@ -36,6 +38,7 @@ export class AccessibilityRoutingModule {}
declarations: [
AccessibilityDemo,
AccessibilityHome,
+ AutocompleteAccessibilityDemo,
ButtonAccessibilityDemo,
ButtonToggleAccessibilityDemo,
CheckboxAccessibilityDemo,
@@ -44,7 +47,7 @@ export class AccessibilityRoutingModule {}
GridListAccessibilityDemo,
InputAccessibilityDemo,
RadioAccessibilityDemo,
- AutocompleteAccessibilityDemo,
+ SliderAccessibilityDemo,
]
})
export class AccessibilityDemoModule {}
diff --git a/src/demo-app/a11y/a11y.ts b/src/demo-app/a11y/a11y.ts
index 233e4c9be63..3d5eb527b80 100644
--- a/src/demo-app/a11y/a11y.ts
+++ b/src/demo-app/a11y/a11y.ts
@@ -26,5 +26,6 @@ export class AccessibilityDemo {
{name: 'Grid list', route: 'grid-list'},
{name: 'Input', route: 'input'},
{name: 'Radio buttons', route: 'radio'},
+ {name: 'Slider', route: 'slider'},
];
}
diff --git a/src/demo-app/a11y/routes.ts b/src/demo-app/a11y/routes.ts
index c6519f97c10..b8bdc293fca 100644
--- a/src/demo-app/a11y/routes.ts
+++ b/src/demo-app/a11y/routes.ts
@@ -1,4 +1,5 @@
import {Routes} from '@angular/router';
+import {AutocompleteAccessibilityDemo} from './autocomplete/autocomplete-a11y';
import {ButtonAccessibilityDemo} from './button/button-a11y';
import {ButtonToggleAccessibilityDemo} from './button-toggle/button-toggle-a11y';
import {CheckboxAccessibilityDemo} from './checkbox/checkbox-a11y';
@@ -8,7 +9,7 @@ import {RadioAccessibilityDemo} from './radio/radio-a11y';
import {AccessibilityHome} from './a11y';
import {DatepickerAccessibilityDemo} from './datepicker/datepicker-a11y';
import {InputAccessibilityDemo} from './input/input-a11y';
-import {AutocompleteAccessibilityDemo} from './autocomplete/autocomplete-a11y';
+import {SliderAccessibilityDemo} from './slider/slider-a11y';
export const ACCESSIBILITY_DEMO_ROUTES: Routes = [
{path: '', component: AccessibilityHome},
@@ -21,4 +22,5 @@ export const ACCESSIBILITY_DEMO_ROUTES: Routes = [
{path: 'grid-list', component: GridListAccessibilityDemo},
{path: 'input', component: InputAccessibilityDemo},
{path: 'radio', component: RadioAccessibilityDemo},
+ {path: 'slider', component: SliderAccessibilityDemo},
];
diff --git a/src/demo-app/a11y/slider/slider-a11y.html b/src/demo-app/a11y/slider/slider-a11y.html
new file mode 100644
index 00000000000..b4d31868b51
--- /dev/null
+++ b/src/demo-app/a11y/slider/slider-a11y.html
@@ -0,0 +1,39 @@
+
+ Continuous slider (e.g. color component sliders)
+ Move the red, green, and blue sliders to choose a color.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Discrete slider (e.g. rate a product)
+ Please rate our product on a scale of 1 (not satisfied) to 5 (extremely satisfied).
+
+
+
+
+ Vertical slider (e.g. volume control)
+ Use the slider to adjust the volume.
+
+
+
+
+
diff --git a/src/demo-app/a11y/slider/slider-a11y.scss b/src/demo-app/a11y/slider/slider-a11y.scss
new file mode 100644
index 00000000000..222510c5b5c
--- /dev/null
+++ b/src/demo-app/a11y/slider/slider-a11y.scss
@@ -0,0 +1,21 @@
+.demo-color-container {
+ display: flex;
+ align-items: center;
+}
+
+.demo-color-label {
+ display: inline-block;
+ width: 50px;
+}
+
+.demo-color-swatch {
+ width: 60px;
+ height: 60px;
+ margin-left: 60px;
+}
+
+.demo-volume-container {
+ display: inline-flex;
+ flex-direction: column;
+ align-items: center;
+}
diff --git a/src/demo-app/a11y/slider/slider-a11y.ts b/src/demo-app/a11y/slider/slider-a11y.ts
new file mode 100644
index 00000000000..2ab15ff5e0c
--- /dev/null
+++ b/src/demo-app/a11y/slider/slider-a11y.ts
@@ -0,0 +1,17 @@
+import {Component} from '@angular/core';
+
+@Component({
+ moduleId: module.id,
+ selector: 'slider-a11y',
+ templateUrl: 'slider-a11y.html',
+ styleUrls: ['slider-a11y.css'],
+})
+export class SliderAccessibilityDemo {
+ red = 0;
+ green = 0;
+ blue = 0;
+
+ get swatchBackground() {
+ return `rgb(${this.red}, ${this.green}, ${this.blue})`;
+ }
+}