[examples] add an accessible-panel example
This commit is contained in:
124
examples/accessible-panel.html
Normal file
124
examples/accessible-panel.html
Normal file
@@ -0,0 +1,124 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
|
||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||
<title>Custom and accessible panel</title>
|
||||
<link rel="stylesheet" href="../theme/default/style.css" type="text/css">
|
||||
<link rel="stylesheet" href="style.css" type="text/css">
|
||||
<style type="text/css">
|
||||
|
||||
.olControlPanel button {
|
||||
position: relative;
|
||||
display: block;
|
||||
margin: 2px;
|
||||
border: 1px solid;
|
||||
padding: 0 5px;
|
||||
border-radius: 4px;
|
||||
height: 35px;
|
||||
background-color: white;
|
||||
float: left;
|
||||
overflow: visible; /* needed to remove padding from buttons in IE */
|
||||
}
|
||||
.olControlPanel button span {
|
||||
padding-left: 25px;
|
||||
}
|
||||
.olControlPanel button span:first-child {
|
||||
padding-left: 0;
|
||||
display: block;
|
||||
position: absolute;
|
||||
left: 2px;
|
||||
}
|
||||
.olControlPanel .olControlDrawFeatureItemActive span:first-child {
|
||||
background-image: url("../theme/default/img/draw_line_on.png");
|
||||
height: 22px;
|
||||
width: 24px;
|
||||
top: 5px;
|
||||
}
|
||||
.olControlPanel .olControlDrawFeatureItemInactive span:first-child {
|
||||
background-image: url("../theme/default/img/draw_line_off.png");
|
||||
height: 22px;
|
||||
width: 24px;
|
||||
top: 5px;
|
||||
}
|
||||
.olControlPanel .olControlZoomBoxItemInactive span:first-child {
|
||||
background-image: url("../img/drag-rectangle-off.png");
|
||||
height: 29px;
|
||||
width: 29px;
|
||||
top: 2px;
|
||||
}
|
||||
.olControlPanel .olControlZoomBoxItemActive span:first-child {
|
||||
background-image: url("../img/drag-rectangle-on.png");
|
||||
height: 29px;
|
||||
width: 29px;
|
||||
top: 2px;
|
||||
}
|
||||
.olControlPanel .olControlZoomToMaxExtentItemInactive span:first-child {
|
||||
background-image: url("../img/zoom-world-mini.png");
|
||||
height: 18px;
|
||||
width: 18px;
|
||||
top: 8px;
|
||||
}
|
||||
.olControlPanel .navHistory span:first-child {
|
||||
background-image: url("../theme/default/img/navigation_history.png");
|
||||
height: 24px;
|
||||
width: 24px;
|
||||
top: 4px;
|
||||
}
|
||||
.olControlPanel .navHistoryPreviousItemActive span:first-child {
|
||||
background-position: 0 0;
|
||||
}
|
||||
.olControlPanel .navHistoryPreviousItemInactive span:first-child {
|
||||
background-position: 0 -24px;
|
||||
}
|
||||
.olControlPanel .navHistoryNextItemActive span:first-child {
|
||||
background-position: -24px 0;
|
||||
}
|
||||
.olControlPanel .navHistoryNextItemInactive span:first-child {
|
||||
background-position: -24px -24px;
|
||||
}
|
||||
|
||||
</style>
|
||||
<script src="../lib/OpenLayers.js"></script>
|
||||
<script src="accessible-panel.js"></script>
|
||||
</head>
|
||||
<body onload="init()">
|
||||
<h1 id="title">Custom and accessible panel</h1>
|
||||
<div id="tags">
|
||||
panels, CSS, style, accessibility, button
|
||||
</div>
|
||||
<p id="shortdesc">
|
||||
Create a custom and accessible panel, styled entirely with
|
||||
CSS.
|
||||
</p>
|
||||
<div id="panel"></div>
|
||||
<div id="map" class="smallmap"></div>
|
||||
|
||||
<div id="docs">
|
||||
|
||||
<p>Accessibility:
|
||||
|
||||
<ul>
|
||||
<li>The buttons are actual HTML buttons. You can therefore
|
||||
use the TAB key to give the focus to the panel's buttons, and the "ENTER"
|
||||
key to activate or trigger the corresponding control.</li>
|
||||
<li>The buttons include text and titles (displayed when a button
|
||||
is hovered).</li>
|
||||
<li>If you remove colors from the page (for example using FireFox's <a
|
||||
href="https://addons.mozilla.org/en-US/firefox/addon/no-color/">No
|
||||
Color extension</a>) the buttons are still visible, and
|
||||
accessible using the keyboard.</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
<p>By default a panel creates buttons as divs. In this example the
|
||||
<code>createControlMarkup</code> panel function is overridden to create
|
||||
a more accessible markup for the buttons. See the <a
|
||||
href="accessible-panel.js" target="_blank"> accessible-panel.js
|
||||
source</a> to see how this is done.</p>
|
||||
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user