index.html 113 KB
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798
<!DOCTYPE html PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'>
<html lang="en" dir="ltr">
<head><title>HTML5: Techniques for providing useful text alternatives</title>


<style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 1.5em 0 1em 0; }
   h3 { margin: 1em 0 1em 0; }
   h4 { margin: 1em 0 0.75em 0; }
   h5, h6 { margin: 1em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
  
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table tbody th { text-align: left; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }
 
   table {

	border-collapse: collapse;

	border: 1px solid #630;	
	
font: normal 90% arial, Verdana, helvetica, sans-serif;
width:100%;
}



th, td

{

	text-align: left;

	vertical-align: top;

	padding: 0.3em;

	border: 1px solid #630;

}

td h1 {font-size:85%;margin:0 0 0 0;}
td p {margin:0 0 0 0;}
thead th, thead td

{

	font-weight: bold;

	text-align: center;

}
 
  caption {text-align:left;
  font-size:small;
  font-family:Arial, Helvetica, sans-serif;
  }
 
   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }
 
  
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning {
	font-weight: bolder;
	font-style: italic;
	color: #900;
	font-size: large;
}
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }
 
 
   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }
 
   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   
 
    /*added styles*/
	 
	 .example img {border: 1px}
	h6 { text-transform: none; }
	.element {width:400px;}
	
	.warning1 {font-weight: bolder; font-style: italic; }
 

.element1 {     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     
     z-index: 1;
}
.element1 {width:400px;}
.warning2 {color: red; background: transparent; }
.figure {
	border: 1px solid #000;
	padding-left: 1em;
}

p.figure {
	border: 1px solid #000;
	padding: 1em;
}


 .inline {
	font-size: x-large;
	
}

.inline img {
	border:none;
	
}

 .warning3 {	font-weight: bolder;
	font-style: italic;
	color: #900;
	font-size: x-large;
}
 .warning4 {	font-weight: bolder;
	font-style: italic;
	color: #900;
	font-size: large;
}
 .warning {
	font-size: x-large;
	font-weight: normal;
	color: #900;
}

.ed_mailto::before {
  content: "\3c";
}
 
.ed_mailto::after {
  content: ">";
}
 </style>
   
     
<style type="text/css">
/*****************************************************************
 * ReSpec CSS
 * Robin Berjon (robin at berjon dot com)
 * v0.05 - 2009-07-31
 *****************************************************************/


/* --- INLINES --- */
em.rfc2119 { 
    text-transform:     lowercase;
    font-variant:       small-caps;
    font-style:         normal;
    color:              #900;
}

h1 acronym, h2 acronym, h3 acronym, h4 acronym, h5 acronym, h6 acronym, a acronym,
h1 abbr, h2 abbr, h3 abbr, h4 abbr, h5 abbr, h6 abbr, a abbr {
    border: none;
}

dfn {
    font-weight:    bold;
}

a.internalDFN {
    color:  inherit;
    border-bottom:  1px solid #99c;
    text-decoration:    none;
}

a.externalDFN {
    color:  inherit;
    border-bottom:  medium dotted #ccc;
    text-decoration:    none;
}

a.bibref {
    text-decoration:    none;
}

code {
    color:  #ff4500;
}


/* --- WEB IDL --- */
pre.idl {
    border-top: 1px solid #90b8de;
    border-bottom: 1px solid #90b8de;
    padding:    1em;
    line-height:    120%;
}

pre.idl::before {
    content:    "WebIDL";
    display:    block;
    width:      150px;
    background: #90b8de;
    color:  #fff;
    font-family:    initial;
    padding:    3px;
    font-weight:    bold;
    margin: -1em 0 1em -1em;
}

.idlType {
    color:  #ff4500;
    font-weight:    bold;
    text-decoration:    none;
}

/*.idlModule*/
/*.idlModuleID*/
/*.idlInterface*/
.idlInterfaceID {
    font-weight:    bold;
    color:  #005a9c;
}

.idlSuperclass {
    font-style: italic;
    color:  #005a9c;
}

/*.idlAttribute*/
.idlAttrType, .idlFieldType {
    color:  #005a9c;
}
.idlAttrName, .idlFieldName {
    color:  #ff4500;
}
.idlAttrName a, .idlFieldName a {
    color:  #ff4500;
    border-bottom:  1px dotted #ff4500;
    text-decoration: none;
}

/*.idlMethod*/
.idlMethType {
    color:  #005a9c;
}
.idlMethName {
    color:  #ff4500;
}
.idlMethName a {
    color:  #ff4500;
    border-bottom:  1px dotted #ff4500;
    text-decoration: none;
}

/*.idlParam*/
.idlParamType {
    color:  #005a9c;
}
.idlParamName {
    font-style: italic;
}

.extAttr {
    color:  #666;
}

/*.idlConst*/
.idlConstType {
    color:  #005a9c;
}
.idlConstName {
    color:  #ff4500;
}
.idlConstName a {
    color:  #ff4500;
    border-bottom:  1px dotted #ff4500;
    text-decoration: none;
}

/*.idlException*/
.idlExceptionID {
    font-weight:    bold;
    color:  #c00;
}

.idlTypedefID, .idlTypedefType {
    color:  #005a9c;
}

.idlRaises, .idlRaises a.idlType, .idlRaises a.idlType code, .excName a, .excName a code {
    color:  #c00;
    font-weight:    normal;
}

.excName a {
    font-family:    monospace;
}

.idlRaises a.idlType, .excName a.idlType {
    border-bottom:  1px dotted #c00;
}

.excGetSetTrue, .excGetSetFalse, .prmNullTrue, .prmNullFalse, .prmOptTrue, .prmOptFalse {
    width:  45px;
    text-align: center;
}
.excGetSetTrue, .prmNullTrue, .prmOptTrue { color:  #0c0; }
.excGetSetFalse, .prmNullFalse, .prmOptFalse { color:  #c00; }

.idlImplements a {
    font-weight:    bold;
}

dl.attributes, dl.methods, dl.constants, dl.fields {
    margin-left:    2em;
}

.attributes dt, .methods dt, .constants dt, .fields dt {
    font-weight:    normal;
}

.attributes dt code, .methods dt code, .constants dt code, .fields dt code {
    font-weight:    bold;
    color:  #000;
    font-family:    monospace;
}

.attributes dt code, .fields dt code {
    background:  #ffffd2;
}

.attributes dt .idlAttrType code, .fields dt .idlFieldType code {
    color:  #005a9c;
    background:  transparent;
    font-family:    inherit;
    font-weight:    normal;
    font-style: italic;
}

.methods dt code {
    background:  #d9e6f8;
}

.constants dt code {
    background:  #ddffd2;
}

.attributes dd, .methods dd, .constants dd, .fields dd {
    margin-bottom:  1em;
}

table.parameters, table.exceptions {
    border-spacing: 0;
    border-collapse:    collapse;
    margin: 0.5em 0;
    width:  100%;
}
table.parameters { border-bottom:  1px solid #90b8de; }
table.exceptions { border-bottom:  1px solid #deb890; }

.parameters th, .exceptions th {
    color:  #fff;
    padding:    3px 5px;
    text-align: left;
    font-family:    initial;
    font-weight:    normal;
    text-shadow:    #666 1px 1px 0;
}
.parameters th { background: #90b8de; }
.exceptions th { background: #deb890; }

.parameters td, .exceptions td {
    padding:    3px 10px;
    border-top: 1px solid #ddd;
    vertical-align: top;
}

.parameters tr:first-child td, .exceptions tr:first-child td {
    border-top: none;
}

.parameters td.prmName, .exceptions td.excName, .exceptions td.excCodeName {
    width:  100px;
}

.parameters td.prmType {
    width:  120px;
}

table.exceptions table {
    border-spacing: 0;
    border-collapse:    collapse;
    width:  100%;
}

/* --- TOC --- */
.toc a {
    text-decoration:    none;
}

a .secno {
    color:  #000;
}

/* --- TABLE --- */
table.simple {
    border-spacing: 0;
    border-collapse:    collapse;
    border-bottom:  3px solid #005a9c;
}

.simple th {
    background: #005a9c;
    color:  #fff;
    padding:    3px 5px;
    text-align: left;
}

.simple th[scope="row"] {
    background: inherit;
    color:  inherit;
    border-top: 1px solid #ddd;
}

.simple td {
    padding:    3px 10px;
    border-top: 1px solid #ddd;
}

.simple tr:nth-child(even) {
    background: #f0f6ff;
}

/* --- DL --- */
.section dd > p:first-child {
    margin-top: 0;
}

.section dd > p:last-child {
    margin-bottom: 0;
}

.section dd {
    margin-bottom:  1em;
}

.section dl.attrs dd, .section dl.eldef dd {
    margin-bottom:  0;
}

/* --- EXAMPLES --- */
pre.example {
    border-top: 1px solid #ff4500;
    border-bottom: 1px solid #ff4500;
    padding:    1em;
    margin-top: 1em;
}

pre.example::before {
    content:    "Example";
    display:    block;
    width:      150px;
    background: #ff4500;
    color:  #fff;
    font-family:    initial;
    padding:    3px;
    font-weight:    bold;
    margin: -1em 0 1em -1em;
}

/* --- EDITORIAL NOTES --- */
.issue {
    padding:    1em;
    margin: 1em 0em 0em;
    border: 1px solid #f00;
    background: #ffc;
}

.issue::before {
    content:    "Issue";
    display:    block;
    width:  150px;
    margin: -1.5em 0 0.5em 0;
    font-weight:    bold;
    border: 1px solid #f00;
    background: #fff;
    padding:    3px 1em;
}

.note {
    margin: 1em 0em 0em;
    padding:    1em;
    border: 2px solid #cff6d9;
    background: #e2fff0;
}

.note::before {
    content:    "Note";
    display:    block;
    width:  150px;
    margin: -1.5em 0 0.5em 0;
    font-weight:    bold;
    border: 1px solid #cff6d9;
    background: #fff;
    padding:    3px 1em;
}

/* --- Best Practices --- */
div.practice {
    border: solid #bebebe 1px;
    margin: 2em 1em 1em 2em;
}

span.practicelab {
    margin: 1.5em 0.5em 1em 1em;
    font-weight: bold;
    font-style: italic;
}

span.practicelab   { background: #dfffff; }

span.practicelab {
    position: relative;
    padding: 0 0.5em;
    top: -1.5em;
}

p.practicedesc {
    margin: 1.5em 0.5em 1em 1em;
}

@media screen {
    p.practicedesc {
        position: relative;
        top: -2em;
        padding: 0;
        margin: 1.5em 0.5em -1em 1em;
}

/* --- SYNTAX HIGHLIGHTING --- */
pre.sh_sourceCode {
  background-color: white;
  color: black;
  font-style: normal;
  font-weight: normal;
}

pre.sh_sourceCode .sh_keyword { color: #005a9c; font-weight: bold; }           /* language keywords */
pre.sh_sourceCode .sh_type { color: #666; }                            /* basic types */
pre.sh_sourceCode .sh_usertype { color: teal; }                             /* user defined types */
pre.sh_sourceCode .sh_string { color: red; font-family: monospace; }        /* strings and chars */
pre.sh_sourceCode .sh_regexp { color: orange; font-family: monospace; }     /* regular expressions */
pre.sh_sourceCode .sh_specialchar { color: 	#ffc0cb; font-family: monospace; }  /* e.g., \n, \t, \\ */
pre.sh_sourceCode .sh_comment { color: #A52A2A; font-style: italic; }         /* comments */
pre.sh_sourceCode .sh_number { color: purple; }                             /* literal numbers */
pre.sh_sourceCode .sh_preproc { color: #00008B; font-weight: bold; }       /* e.g., #include, import */
pre.sh_sourceCode .sh_symbol { color: blue; }                            /* e.g., *, + */
pre.sh_sourceCode .sh_function { color: black; font-weight: bold; }         /* function calls and declarations */
pre.sh_sourceCode .sh_cbracket { color: red; }                              /* block brackets (e.g., {, }) */
pre.sh_sourceCode .sh_todo { font-weight: bold; background-color: #00FFFF; }   /* TODO and FIXME */

/* Predefined variables and functions (for instance glsl) */
pre.sh_sourceCode .sh_predef_var { color: #00008B; }
pre.sh_sourceCode .sh_predef_func { color: #00008B; font-weight: bold; }

/* for OOP */
pre.sh_sourceCode .sh_classname { color: teal; }

/* line numbers (not yet implemented) */
pre.sh_sourceCode .sh_linenum { display: none; }

/* Internet related */
pre.sh_sourceCode .sh_url { color: blue; text-decoration: underline; font-family: monospace; }

/* for ChangeLog and Log files */
pre.sh_sourceCode .sh_date { color: blue; font-weight: bold; }
pre.sh_sourceCode .sh_time, pre.sh_sourceCode .sh_file { color: #00008B; font-weight: bold; }
pre.sh_sourceCode .sh_ip, pre.sh_sourceCode .sh_name { color: #006400; }

/* for Prolog, Perl... */
pre.sh_sourceCode .sh_variable { color: #006400; }

/* for LaTeX */
pre.sh_sourceCode .sh_italics { color: #006400; font-style: italic; }
pre.sh_sourceCode .sh_bold { color: #006400; font-weight: bold; }
pre.sh_sourceCode .sh_underline { color: #006400; text-decoration: underline; }
pre.sh_sourceCode .sh_fixed { color: green; font-family: monospace; }
pre.sh_sourceCode .sh_argument { color: #006400; }
pre.sh_sourceCode .sh_optionalargument { color: purple; }
pre.sh_sourceCode .sh_math { color: orange; }
pre.sh_sourceCode .sh_bibtex { color: blue; }

/* for diffs */
pre.sh_sourceCode .sh_oldfile { color: orange; }
pre.sh_sourceCode .sh_newfile { color: #006400; }
pre.sh_sourceCode .sh_difflines { color: blue; }

/* for css */
pre.sh_sourceCode .sh_selector { color: purple; }
pre.sh_sourceCode .sh_property { color: blue; }
pre.sh_sourceCode .sh_value { color: #006400; font-style: italic; }

/* other */
pre.sh_sourceCode .sh_section { color: black; font-weight: bold; }
pre.sh_sourceCode .sh_paren { color: red; }
pre.sh_sourceCode .sh_attribute { color: #006400; }

</style><link charset="utf-8" type="text/css" rel="stylesheet" href="http://www.w3.org/StyleSheets/TR/W3C-WD"></head>
<body style="display: inherit;"><div class="head"><p><a href="http://www.w3.org/"><img src="http://www.w3.org/Icons/w3c_home" alt="W3C" width="72" height="48"></a></p><h1 class="title" id="title">HTML5: Techniques for providing useful text alternatives</h1><h2 id="w3c-working-draft-25-may-2011">W3C Working Draft 25 May 2011</h2>
<dl>
<dt>This version:</dt>
<dd><a href="http://www.w3.org/TR/2011/WD-html-alt-techniques-20110525/">http://www.w3.org/TR/2011/WD-html-alt-techniques-20110525/</a></dd>
<dt>Latest published version:</dt>
<dd><a href="http://www.w3.org/TR/html-alt-techniques/">http://www.w3.org/TR/html-alt-techniques/</a></dd>
<dt>Latest editor's draft:</dt>
<dd><a href="http://dev.w3.org/html5/alt-techniques/Overview.html">http://dev.w3.org/html5/alt-techniques/Overview.html</a></dd>
<dt>Previous version:</dt>
<dd><a href="http://www.w3.org/TR/2011/WD-html-alt-techniques-20110405/">http://www.w3.org/TR/2011/WD-html-alt-techniques-20110405/</a></dd>
<dd><a href="http://www.w3.org/TR/2011/WD-html-alt-techniques-20110113/">http://www.w3.org/TR/2011/WD-html-alt-techniques-20110113/</a></dd>
<dd><a href="http://www.w3.org/TR/2010/WD-html-alt-techniques-20101019/">http://www.w3.org/TR/2010/WD-html-alt-techniques-20101019/</a></dd>
<dd><a href="http://www.w3.org/TR/2010/WD-html-alt-techniques-20100624/">http://www.w3.org/TR/2010/WD-html-alt-techniques-20100624/</a></dd>
<dt>Editor:</dt><dd><span>Steve Faulkner</span>, The Paciello Group <span class="ed_mailto"><a href="mailto:sfaulkner@paciellogroup.com">sfaulkner@paciellogroup.com</a></span> </dd>
</dl><p class="copyright"><a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2011 <a href="http://www.w3.org/"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>, <a href="http://www.ercim.eu/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>, <a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>, <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a> and <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> rules apply.</p><hr></div>



    <div id="abstract" class="introductory section"><!--OddPage--><h2>Abstract</h2>

<p>This document contains author conformance requirements for use of the alt attribute in HTML5 and best practice guidance for authors of HTML documents on providing text alternatives for images. </p>
 <p>This specification is an extension to the HTML5 specification [<cite><a href="#bib-HTML5" rel="biblioentry" class="bibref">HTML5</a></cite>]. All normative
    content in the HTML5 specification, unless specifically overridden by this
    specification, is intended to be the basis for this specification.</p>

 <p>This specification is a replacement for the sections <A href="http://dev.w3.org/html5/spec/Overview.html#alt">4.8.1.1 Requirements for providing text to act as an alternative for images</A> up to and including <A href="http://dev.w3.org/html5/spec/embedded-content-1.html#an-image-not-intended-for-the-user">4.8.1.1.11 An image not intended for the user</A> of the HTML5 specification and all of the normative and non normative content of the sections there-in.</p>

</div><div id="sotd" class="introductory section"><h2>Status of This Document</h2><p><em>This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the <a href="http://www.w3.org/TR/">W3C technical reports index</a> at http://www.w3.org/TR/.</em></p>
  <p class="warning"><strong>This document is subject to change without notice.</strong></p>
<p>This document was published by the <a href="http://www.w3.org/html/wg/">HTML Working Group</a> as a Last Call Working Draft. This document is intended to become a W3C Recommendation.
 If you wish to make a comment regarding this document, please
 either submit it using
 <a href="http://www.w3.org/Bugs/Public/enter_bug.cgi?product=HTML%20WG&amp;component=alt%20techniques%20(editor:%20Steven%20Faulkner)">our public bug database</a>,
 or send it as an e-mail message to
 <a href="mailto:public-html-comments@w3.org">public-html-comments@w3.org</a>
 (<a href="mailto:public-html-comments-request@w3.org?subject=subscribe">subscribe</a>,
 <a href="http://lists.w3.org/Archives/Public/public-html-comments/">archives</a>).
 The Last Call period ends 03 August 2011. All feedback is welcome.</p>
<p>Publication as a Working Draft does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.</p>

<p>Two formal objections are open against this document:</p>
<ol>
<li><a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=12726">bug 12726 (Document should be on the Note-track)</a> +
<a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=12727">bug 12727 (Contradicts HTML5)</a></li>
<li><a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=12728">bug 12728 (This is not the proper WG for this document)</a></li>
</ol>

<p>W3C anticipates that there will be changes to this specification as a
result of the resolution of Last Call issues. Per the usual W3C Process,
any significant changes to the specification will trigger a subsequent Last
Call.</p>

<p>This document was produced by a group operating under the <a
href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5 February 2004
W3C Patent Policy</a>. W3C maintains a <a
href="http://www.w3.org/2004/01/pp-impl/40318/status"
rel="disclosure">public list of any patent disclosures</a> made in
connection with the deliverables of the group; that page also includes
instructions for disclosing a patent. An individual who has actual
knowledge of a patent which the individual believes contains <a
href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">Essential
Claim(s)</a> must disclose the information in accordance with <a
href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">section
6 of the W3C Patent Policy</a>.</p></div><div class="section" id="toc"><h2
class="introductory">Table of Contents</h2><ul class="toc"><li
class="tocline"><a class="tocxref" href="#abstract"><span class="secno">1.
</span>Abstract</a></li><li class="tocline"><a class="tocxref"
href="#intro_alt"><span class="secno">2. </span>Introduction</a><ul
class="toc"><li class="tocline"><a class="tocxref"
href="#conformance"><span class="secno">2.1
</span>Conformance</a></li></ul></li><li class="tocline"><a class="tocxref"
href="#recommendations"><span class="secno">3. </span>Requirements and
Recommendations:</a><ul class="toc"><li class="tocline"><a class="tocxref"
href="#sec1"><span class="secno">3.1 </span>A link or button containing
only an image</a></li><li class="tocline"><a class="tocxref"
href="#sec2"><span class="secno">3.2 </span>Graphical representations:
charts, diagrams, graphs, maps, illustrations</a></li><li
class="tocline"><a class="tocxref" href="#sec3"><span class="secno">3.3
</span>Images of text</a></li><li class="tocline"><a class="tocxref"
href="#sec4"><span class="secno">3.4 </span>Images that include
text</a></li><li class="tocline"><a class="tocxref" href="#sec5"><span
class="secno">3.5 </span>A purely decorative image that doesn't add any
information</a></li><li class="tocline"><a class="tocxref"
href="#sec6"><span class="secno">3.6 </span>Images that enhance the themes
or subject matter of the page content</a></li><li class="tocline"><a
class="tocxref" href="#sec7"><span class="secno">3.7 </span>An image not
intended for the user</a></li><li class="tocline"><a class="tocxref"
href="#sec8"><span class="secno">3.8 </span>Icons</a></li><li
class="tocline"><a class="tocxref" href="#sec9"><span class="secno">3.9
</span>Images of Pictures</a></li><li class="tocline"><a class="tocxref"
href="#sec10"><span class="secno">3.10 </span>Webcam images</a></li><li
class="tocline"><a class="tocxref" href="#sec11"><span class="secno">3.11
</span>A group of images that form a single larger picture with and without
links</a></li><li class="tocline"><a class="tocxref" href="#sec12"><span
class="secno">3.12 </span> When a text alternative is unknown at the time
of publication</a></li><li class="tocline"><a class="tocxref"
href="#sec13"><span class="secno">3.13 </span>CAPTCHA Images </a></li><li
class="tocline"><a class="tocxref" href="#sec14"><span class="secno">3.14
</span>Logos, insignia, flags, or emblems</a></li><li class="tocline"><a
class="tocxref" href="#sec15"><span class="secno">3.15 </span>Inline
images</a></li></ul></li><li class="tocline"><a class="tocxref"
href="#methods"><span class="secno">4. </span>Methods for Providing Text
Alternatives</a><ul class="toc"><li class="tocline"><a class="tocxref"
href="#secm1"><span class="secno">4.1 </span>The <code>img</code> element
<code>alt</code> attribute</a><ul class="toc"><li class="tocline"><a
class="tocxref" href="#secm2"><span class="secno">4.1.1 </span>Is alt
attribute content a replacement for an image?</a></li><li
class="tocline"><a class="tocxref" href="#secm3"><span class="secno">4.1.2
</span>Using an empty <code>alt</code> attribute
<code>alt=""</code></a></li><li class="tocline"><a class="tocxref"
href="#m5"><span class="secno">4.1.3 </span>How long should a  text
alternative be?</a></li></ul></li><li class="tocline"><a class="tocxref"
href="#m6"><span class="secno">4.2 </span>The <code>figure</code> and
<code>figcaption</code> elements</a></li><li class="tocline"><a
class="tocxref" href="#secm7"><span class="secno">4.3 </span>The
<code>img</code> element <code>title</code> attribute</a></li></ul></li><li
class="tocline"><a class="tocxref" href="#gloss"><span class="secno">5.
</span>Glossary</a></li><li class="tocline"><a class="tocxref"
href="#ack"><span class="secno">6. </span>Acknowledgements</a></li><li
class="tocline"><a class="tocxref" href="#references"><span
class="secno">A. </span>References</a><ul class="toc"><li
class="tocline"><a class="tocxref" href="#normative-references"><span
class="secno">A.1 </span>Normative references</a></li><li
class="tocline"><a class="tocxref" href="#informative-references"><span
class="secno">A.2 </span>Informative
references</a></li></ul></li></ul></div>

<hr>
<div class="section" id="intro_alt">
<!--OddPage--><h2 id="intro"><span class="secno">2. </span>Introduction</h2>
<h3 id="text-alt">Text Alternatives</h3>
<p><a href="http://www.w3.org/TR/WCAG20/#text-altdef">Text alternatives</a> are   a primary way of making visual information accessible, because they can be rendered   through any sensory modality (for example, visual, auditory or tactile) to match   the needs of the user. Providing text alternatives allows the information to be   rendered in a variety of ways by a variety of user agents. For example, a person   who cannot see a picture can have the text alternative read aloud using   synthesized speech.</p>
<p>To determine appropriate <a href="http://www.w3.org/TR/WCAG20/#text-altdef">text alternatives</a> it is   important to think about why an image is being included in a document. What is   its purpose? Thinking like this will help you to understand what is important   about the image for the page's intended audience. Every image has a reason for   being on a page, because it  provides useful information, performs a   function, or enhances aesthetics. Therefore, knowing what the image is for,   makes writing appropriate <a href="http://www.w3.org/TR/WCAG20/#text-altdef">text alternatives</a> easier.</p>
<h3 id="example-benefits">Examples of scenarios where users benefit from text alternatives for images</h3>
<ul>
  <li>They have a very slow connection and are browsing with images disabled.</li>
  <li>They have a vision impairment and use  text to speech software. </li>
  <li>They have a cognitive impairment and use  text to speech software. </li>
  <li>They
    are using a text-only browser. </li>
  <li> They are listening to
    the page being read out by a  voice Web
    browser.</li>
  <li>They have images disabled to save on download costs.</li>
</ul>
<h3 id="good-practices">General Text Alternative Good Practices</h3>
<ul>
  <li>Provide the same informational <a href="http://www.w3.org/TR/WCAG20/#contentdef">content</a> as the image.   
  </li><li>Where an image performs a specific function, such as a graphical link,   provide information about its <a href="http://www.w3.org/TR/WCAG20/#functiondef">functionality</a>.   
  </li><li>Be succinct as possible while still conveying equivalent values. Short text   that describes its purpose or gives an overview will often suffice.   
  </li><li>Write suitable alt text according to context. The same image in a different   situation may need very different alt text.   
  </li><li>Avoid redundant alt text. An example of this would be repeating the same   text in your document, as well as in the alt attribute, and is unnecessary. </li>
</ul>
<div class="section" id="conformance"><h3><span class="secno">2.1 </span>Conformance</h3><p>As well as sections marked as non-normative, all authoring guidelines, diagrams, examples, and notes in this specification are non-normative. Everything else in this specification is normative.</p>
<p>The key words <em title="must" class="rfc2119">must</em>, <em title="must not" class="rfc2119">must not</em>, <em title="required" class="rfc2119">required</em>, <em title="should" class="rfc2119">should</em>, <em title="should not" class="rfc2119">should not</em>, <em title="recommended" class="rfc2119">recommended</em>, <em title="may" class="rfc2119">may</em>, and <em title="optional" class="rfc2119">optional</em> in this specification are to be interpreted as described in [<cite><a href="#bib-RFC2119" rel="biblioentry" class="bibref">RFC2119</a></cite>].</p>
</div>
</div>
<hr>
<div class="section" id="recommendations">
<!--OddPage--><h2><span class="secno">3. </span>Requirements and Recommendations:</h2>
<p>The requirements and recommendations for the <code><a href="http://dev.w3.org/html5/markup/img.html#img.attrs.alt">alt</a></code> attribute depend on what the image is intended to represent and the context in which it is used, as described in the following sections. Each section includes a description, code and graphical examples and links to related techniques.</p>
<div class="section" id="sec1"><h3 id="button-image-only"><span class="secno">3.1 </span>A link or button containing only an image</h3>
<p>When an <a href="http://dev.w3.org/html5/markup/a.html#a">a</a> element that is a hyperlink, or a <code><a href="http://dev.w3.org/html5/markup/button.html#button">button</a></code> element, has no text content but contains one or more images, the <code>alt</code> attributes <em title="must" class="rfc2119">must</em> contain text that together convey the purpose of the link or button.</p>
<h4 id="hab">Example 1.1</h4>
<div class="example">
  <p>In this example, a user is asked to pick her preferred color
    from a list of three. Each color is given by an image, but for
    users who cannot view the images,
    the color names are included within the alt attributes of the images:</p>
  <p><strong>Example Rendering:</strong></p>
  <p><img src="images/buttons.gif" alt="The example HTML code as displayed in a browser. 3 links each containing a rectangular image:  1 is blue with the text 'blue', 2 red with the text 'red' and 3 is green with the text 'green'." width="274" height="45"></p>
  <p><strong>Example code:</strong></p>
  <pre>&lt;ul&gt;
&lt;li&gt;&lt;a href="red.html"&gt;&lt;img src="red.jpeg" <strong>alt="Red"</strong>&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="green.html"&gt;&lt;img src="green.jpeg" <strong>alt="Green"</strong>&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="blue.html"&gt;&lt;img src="blue.jpeg" <strong>alt="Blue"</strong>&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</pre>
</div>
<h4 id="hac">Example 1.2</h4>
<div class="example">
  <p>In this example, a button has a set of images to indicate the
    kind of color output desired by the user. The first image is used to give the text alternative.</p>
  <p><strong>Example Rendering:</strong></p>
  <p><img src="images/rgbbutton1.gif" alt="A button with the letters R G B." width="88" height="49"></p>
  <p><strong>Example code:</strong></p>
  <pre>&lt;abbr title="red, green and blue."&gt;&lt;button name="rgb"&gt;
&lt;img src="red.jpg" <strong>alt="RGB"</strong>&gt;&lt;img src="green.jpg" <strong>alt=""</strong>&gt;&lt;img src="blue.jpg" <strong>alt=""</strong>&gt;&lt;/button&gt;
&lt;/abbr&gt;</pre>
  <p>Since each image represents one part of the text, it could also
    be written like this:</p>
  <pre>&lt;abbr title="red, green and blue."&gt;
&lt;button name="rgb"&gt;&lt;img src="red.jpg" <strong>alt="R"</strong>&gt;&lt;img src="green.jpg" <strong>alt="G"</strong>&gt;
&lt;img src="blue.jpg" <strong>alt="B"</strong>&gt;&lt;/button&gt;&lt;/abbr&gt;
</pre>
  <p>However, as the images form the visual representation of a single button and users will not normally interact with the individual images, adding the text alternative to one of the images only is most appropriate.</p>
</div> 
<h4 id="hac3">Example 1.3</h4> 
<div class="example">
  <p>In this example, a link contains a logo. The link points to the W3C web site. The text alternative is a brief description of the link target.</p>
  <p><strong>Example Rendering:</strong></p>
  <p><abbr title="World Wide Web Consortium"><a href="http://w3.org"><img src="images/w3c_home.png" alt="W3C web site" width="72" height="48"></a></abbr></p>
  <p><strong>Example code:</strong></p>
  <pre>&lt;abbr title="World Wide Web Consortium"&gt;
&lt;a href="http://w3.org"&gt;
&lt;img src="images/w3c_home.png" width="72" height="48" <strong>alt="W3C web site"</strong>&gt;
&lt;/a&gt;
&lt;/abbr&gt;
</pre>
 
</div>

<h4 id="had">Related techniques and resources</h4>
<ul>
  <li><a href="http://www.w3.org/TR/2008/NOTE-WCAG20-TECHS-20081211/G196">Using a text alternative on one item within a group of images that   describes all items in the group</a> [<cite><a href="#bib-WCAG20-TECHS" rel="biblioentry" class="bibref">WCAG20-TECHS</a></cite>]</li>
  <li><a href="http://www.w3.org/TR/WCAG-TECHS/H30.html">Providing link text that describes the purpose of a link for anchor elements</a> [<cite><a href="#bib-WCAG20-TECHS" rel="biblioentry" class="bibref">WCAG20-TECHS</a></cite>]</li>
  <li><a href="http://universalusability.com/access_by_design/links/alt-text.html">Use alt-text for image links</a></li>
  <li><a href="http://www.cs.tut.fi/%7Ejkorpela/www/links.html">Links want to be Links</a></li>
</ul>
</div>
<div class="section" id="sec2">
<h3 id="graphical-representations"><span class="secno">3.2 </span>Graphical representations: charts, diagrams, graphs, maps, illustrations</h3>
<p>The full text alternative <em title="may" class="rfc2119">may</em> be provided in the <code>alt</code> attribute, or a shorter text alternative <em title="may" class="rfc2119">may</em> be provided in the <code>alt</code> attribute or in a programmatically associated element, and a longer programmatically associated text alternative provided in the same document or in a linked document. </p>
<p>It is important to understand that a  text alternative provided in the alt attribute is a <em>replacement</em> for the image, while a short text alternative in the alt attribute, accompanied by a programmatically associated longer text alternative, can be a description of the
  image or a link target if the image is the sole content of a link.</p>
<p>While all the examples below can be considered for use, each method has advantages and disadvantages.</p>
<h4 id="hae">Example 2.1</h4>
<div class="example">
  <p>In the following example we have an image of a <a href="#flowchart">flowchart</a> , with text in the <code>alt</code> attribute describes the process shown in the flowchart:</p>
  <p><strong>Example Image:</strong></p>
  <img src="images/flowchart.gif" alt="flowchart" id="flowchart" width="221" height="299">
  <p> <strong>Example Code:</strong><br>
  </p>
  <pre>&lt;p&gt;A flowchart representing a process for dealing with a non-functioning lamp:&lt;/p&gt;
&lt;p&gt;&lt;img src="flowchart.gif" <strong>alt="If the lamp doesn't work; check if it's plugged in. 
If not, plug it in. If it's plugged in and still doesn't work; check if the bulb is burned out. 
If it is, replace the bulb. If it still does not work; buy a new lamp."</strong>&gt;&lt;/p&gt;</pre>
</div>
<h4 id="ex22">Example 2.2</h4>
<div class="example">
  <p>Here's another example of the same <a href="#flowchart">flowchart</a> image, showing a short text alternative included in the alt attribute, in this case the text alternative is a description of the link target as the image is the sole content of a link. The link points to a description, within the same document, of the process represented in the flowchart. Note a title has been included on the link for sighted mouse users, the title provides information about the link target.</p>
  <p><strong>Example Code:</strong><br>
  </p>
  <pre>&lt;p&gt;<strong>&lt;a href="#d1" title="Flowchart description."&gt;</strong>&lt;img src="flowchart.gif" <strong>alt="Broken lamp flowchart description."</strong>&gt;<strong>&lt;/a&gt;</strong>&lt;/p&gt;
...

&lt;div <strong>id="d1"</strong>&gt;
&lt;h2&gt;Broken lamp flowchart description&lt;/h2&gt;

&lt;p&gt;If the lamp doesn't work; check if it's plugged in. If not, 
plug it in. If it's plugged in and still doesn't work; check if the bulb 
is burned out. If it is, replace the bulb. If it still does not work; buy a new lamp.&lt;/p&gt;
&lt;/div&gt;</pre>
</div>
<h4 id="haee">Example 2.3</h4>
<div class="example">
  <p>Here's another example of the same <a href="#flowchart">flowchart</a> image, showing a short text alternative included in the alt attribute and a longer text alternative in text, programmatically associated using the <a href="http://www.w3.org/TR/wai-aria/states_and_properties#aria-describedby">aria-describedby</a> attribute:</p>
  <p><strong>Example Code:</strong><br>
  </p>
  <pre>&lt;p&gt;&lt;img src="flowchart.gif" <strong>alt="A flowchart representing a process for dealing with a non-functioning lamp."</strong> 
<strong>aria-describedby="d1"</strong>&gt;&lt;/p&gt;


&lt;p <strong>id="d1"</strong>&gt;If the lamp doesn't work; check if it's plugged in. If not, 
plug it in. If it's plugged in and still doesn't work; check if the bulb 
is burned out. If it is, replace the bulb. If it still does not work; buy a new lamp.&lt;/p&gt;
</pre>
  <h5 id="haf">&nbsp;</h5>
</div>
<h4 id="hag">Example 2.4</h4>
<div class="example">
  <p>Here's another example of the same <a href="#flowchart">flowchart</a> image, showing a short text alternative included in the alt attribute and a longer text alternative in text, programmatically associated using the <a href="http://www.w3.org/TR/wai-aria/states_and_properties#aria-describedby">aria-describedby</a> attribute. <strong>Note:</strong> The the longer text alternative is structured using an ordered list.</p>
  <p><strong>Example Image in context:</strong></p>
  <div class="element1">
    <p><img src="images/flowchart.gif" alt="A flowchart process for dealing with a non-functioning lamp." width="221" height="299"></p>
    <div id="d1"> <strong>If the lamp doesn't work:</strong>
        <ol>
          <li>Check if it's plugged in, if not, plug it in.</li>
          <li>If it still doesn't work; check if the bulb is burned out.
            If it is, replace the bulb.</li>
          <li>If it still doesn't work; buy a new lamp.</li>
        </ol>
    </div>
  </div>
  <p><strong>Example Code:</strong><br>
  </p>
  <pre>&lt;p&gt;&lt;img src="flowchart.gif" <strong>alt="A flowchart process for dealing with a non-functioning lamp."</strong> 
<strong>aria-describedby="d1"</strong>&gt;&lt;/p&gt;


&lt;div <strong>id="d1"</strong>&gt;
&lt;strong&gt;If the lamp doesn't work:&lt;/strong&gt;<br><strong>&lt;ol&gt;</strong><br>	<strong>&lt;li&gt;</strong>Check if it's plugged in, if not, plug it in.<strong>&lt;/li&gt;</strong><br>	<strong>&lt;li&gt;</strong>If it still doesn't work; check if the bulb is burned out.<br>	If it is, replace the bulb.<strong>&lt;/li&gt;</strong><br>	<strong>&lt;li&gt;</strong>If it still doesn't work; buy a new lamp.<strong>&lt;/li&gt;</strong><br><strong>&lt;/ol&gt;</strong>
&lt;/div&gt; </pre>
</div>
<h4 id="hag21">Example 2.5</h4>
<div class="example">
  <p>In this example, there is an image of a chart, It would be inappropriate to provide the information depicted in the chart as a prose text alternative as the information is a data set. Instead a structured text alternative alternative <em title="should" class="rfc2119">should</em> be provided. in this case in the form of a data table using the data that is represented in the chart image. Note that indications of the highest and lowest rainfall for each season has been included in the table, so that an indication of trends easily identified in the chart are also available in the data table.</p>
  <p><strong>Example Image in context:</strong></p>
  <div class="element1">
    <p><img src="images/table.gif" alt="Bar Chart showing rainfall in millimetres by Country and Season." width="407" height="341"></p>
  
  <table border="1">
<caption>
Average rainfall in millimetres  by country and season.
</caption>
<tbody><tr>
	<td></td>
	<th scope="col">UK</th>
	<th scope="col">Japan</th>
	<th scope="col">Australia</th>
</tr>
<tr>
	<th scope="row">Spring</th>
	<td>5.5 (highest)</td>
	<td>2.4</td>
	<td>2 (lowest)</td>
</tr>
<tr>
	<th scope="row">Summer</th>
	<td>4.5 (highest)</td>
	<td>3.4</td>
	<td>2 (lowest)</td>
</tr>
<tr>
	<th scope="row">Autumn</th>
	<td>3.5 (highest)</td>
	<td>1.8</td>
	<td>1.5 (lowest)</td>
</tr>
<tr>
	<th scope="row">Winter</th>
	<td>1.5 (highest)</td>
	<td>1.2</td>
	<td>1 (lowest)</td>
</tr>
</tbody></table>

  
  </div>
  <p><strong>Example Code:</strong><br>
  </p>
  <pre>&lt;p&gt;&lt;img src="rainchart.gif" <strong>alt="Bar Chart showing average rainfall in millimetres by country and season."</strong><strong></strong>&gt;&lt;/p&gt;

&lt;table&gt;<br>&lt;caption&gt;<br>Rainfall in millimetres by Country and Season.<br>&lt;/caption&gt;<br>&lt;tr&gt;<br> &lt;td&gt;&lt;/td&gt;&lt;th scope="col"&gt;UK&lt;/th&gt;&lt;th scope="col"&gt;Japan&lt;/th&gt;&lt;th scope="col"&gt;Australia&lt;/th&gt;<br>&lt;/tr&gt;<br>&lt;tr&gt;<br>	&lt;th scope="row"&gt;Spring&lt;/th&gt;&lt;td&gt;5.5 (highest)&lt;/td&gt;&lt;td&gt;2.4&lt;/td&gt;&lt;td&gt;2 (lowest)&lt;/td&gt;<br>&lt;/tr&gt;<br>&lt;tr&gt;<br>	&lt;th scope="row"&gt;Summer&lt;/th&gt;&lt;td&gt;4.5 (highest)&lt;/td&gt;&lt;td&gt;3.4&lt;/td&gt;&lt;td&gt;2 (lowest)&lt;/td&gt;<br>&lt;/tr&gt;<br>&lt;tr&gt;<br>	&lt;th scope="row"&gt;Autumn&lt;/th&gt;&lt;td&gt;3.5 (highest)&lt;/td&gt;&lt;td&gt;1.8&lt;/td&gt;&lt;td&gt;1.5 (lowest)&lt;/td&gt;<br>&lt;/tr&gt;<br>&lt;tr&gt;<br>	&lt;th scope="row"&gt;Winter&lt;/th&gt;&lt;td&gt;1.5 (highest)&lt;/td&gt;&lt;td&gt;1.2&lt;/td&gt;&lt;td&gt;1 lowest&lt;/td&gt;<br>&lt;/tr&gt;<br>&lt;/table&gt;</pre>
</div>
<h4 id="hah">Related  techniques and resources</h4>
<ul>
  <li><a href="http://www.w3.org/TR/WCAG-TECHS/G92.html">Providing long description for non-text content that serves the   same                      purpose and presents the same information</a> [<cite><a href="#bib-WCAG20-TECHS" rel="biblioentry" class="bibref">WCAG20-TECHS</a></cite>]</li>
  <li><a href="http://www.w3.org/TR/WCAG-TECHS/G94.html">Providing short text alternative for non-text content that   serves the same purpose and presents the same information as the   non-text content </a> [<cite><a href="#bib-WCAG20-TECHS" rel="biblioentry" class="bibref">WCAG20-TECHS</a></cite>]</li>
  <li><a href="http://www.webaim.org/techniques/images/longdesc.php">Creating Accessible Images: Long Descriptions</a> (WebAIM tutorial)</li>
</ul>
</div>
<div class="section" id="sec3">
<h3 id="img-of-text"><span class="secno">3.3 </span>Images of text</h3>
<p>Sometimes, an image only contains  text, and the purpose of the image is to display text  using visual effects and /or fonts.  It is <em>strongly</em> recommended that text styled using CSS be used, but if this is not possible, in most of these cases, the content of the <code title="attr-img-alt">alt</code> attribute <em title="should" class="rfc2119">should</em> consist of the same text as written in the image itself. </p>
<h4 id="hai">Example 3.1</h4>
<div class="example">
  <!-- <p>Consider this <a href="images/text.gif">image</a>  containing the text "Get Happy!" it uses a non standard font and uses multiple colors. The text is
    merely being used as a heading, to spice up the page for graphical
    users, then the correct alternative text is just the same text
  "Get Happy!", and no mention need be made of the text style:
   </p>-->
  <p>This example shows an image of the text "Get Happy!"
    written in a fancy multi colored freehand style.
    The image makes up the content of a heading. In this case the text alternative for the image should be "Get Happy!".</p>
  <p><strong>Example Image:</strong></p>
  <p> <img src="images/text.gif" alt="Get Happy!" width="275" height="77"> </p>
  <p><strong>Example code:</strong></p>
  <pre>&lt;h1&gt;&lt;img src="gethappy.gif" <strong>alt="Get Happy!"</strong>&gt;&lt;/h1&gt;</pre>
  
</div>
<h4 id="haj">Example 3.2</h4>
<div class="example">
  <!-- <p>Consider this <a href="images/text.gif">image</a>  containing the text "Get Happy!" it uses a non standard font and uses multiple colors. The text is
    merely being used as a heading, to spice up the page for graphical
    users, then the correct alternative text is just the same text
  "Get Happy!", and no mention need be made of the text style:
 -->
  <p>In this example we have an advertising image consisting of text, the phrase "The BIG sale" is repeated 3 times, each time the text gets smaller and fainter, the last line reads "...ends Friday" In this case it is recommended that the image's text alternative only include the text "The BIG sale" once as the repetition is for visual effect and the repetition of the text for users who cannot view the image is unnecessary and may be confusing.</p>
  <p><strong>Example Image:</strong></p>
  <p><img src="images/sale.gif" alt="The big sale ends Friday." width="400" height="190"></p>
  <p><strong>Example code:</strong></p>
  <pre>&lt;p&gt;&lt;img src="sale.gif" <strong>alt="The BIG sale ...ends Friday."</strong>&gt;&lt;/p&gt;</pre>
  <h5 id="hak">Advantages:</h5>
  <ul>
    <li>Text alternative is explicitly associated with the image.</li>
  </ul>
  <h5 id="hal">Disadvantages:</h5>
  <ul>
    <li>When text is represented in an image the text cannot be restyled to suit users needs.</li>
  </ul>
</div>
<h4 id="ham">Related  techniques and resources</h4>
<ul>
  <li><a href="http://www.w3.org/TR/UNDERSTANDING-WCAG20/visual-audio-contrast-text-presentation.html">Images of text</a> explanation from WCAG 2.0 of why it is better to use text rather than images of text</li>
</ul>
</div>
<div class="section" id="sec4">
<h3 id="images-include-text"><span class="secno">3.4 </span>Images that include text</h3>
<p>Sometimes, an image consists of a graphics such as a chart and associated text. In this case it is recommended that the text in the image is included in text alternative. </p>
<h4 id="han">Example 4.1</h4>
<div class="example">
  <p>Consider an image containing  a pie chart and associated text. It is recommended wherever possible to provide any associated text as text, not an image of text. If this is not possible include the text in the text alternative.</p>
  <p><strong>Example Image:</strong></p>
  <p><img src="images/figure1.gif" alt="Figure 1. Distribution of Articles by Journal Category. 
Pie chart: Language=68%, Education=14% and Science=18%." id="piechart" width="500" height="300"></p>
  <p><strong>Example code:</strong></p>
  <pre>&lt;p&gt;&lt;img src="figure1.gif" <strong>alt="Figure 1. Distribution of Articles by Journal Category. 
Pie chart: Language=68%, Education=14% and Science=18%."</strong>&gt;&lt;/p&gt;</pre>
</div>
<h4 id="hao">Example 4.2</h4>
<div class="example">
  <p>Here's another example of the same <a href="#piechart">pie chart</a>
  image, showing a short text alternative included in the alt attribute and
  a longer text alternative in text, programmatically associated using the
  <a
  href="http://www.w3.org/TR/wai-aria/states_and_properties#aria-describedby">aria-describedby</a>
  attribute:</p>
  <p><strong>Example code:</strong></p>
  <pre>&lt;p&gt;&lt;img src="figure1.gif" <strong>alt="Figure 1"</strong> <strong>aria-describedby="d2"</strong>&gt;&lt;/p&gt;

&lt;p <strong>id="d2"</strong>&gt;Figure 1. Distribution of Articles by Journal Category. 
Pie chart: Language=68%, Education=14% and Science=18%.&lt;/p&gt;</pre>
</div>
<h4 id="haq">Related  techniques and resources</h4>
<p><a href="http://www.w3.org/TR/WCAG-TECHS/H30.html"></a></p>
</div>
<div class="section" id="sec5">
<h3 id="decorative"><span class="secno">3.5 </span>A purely decorative image that doesn't add any information</h3>
<p><a href="http://www.w3.org/TR/WCAG20/#puredecdef">Purely decorative</a> images are visual enhancements, decorations or embellishments that provide no   function or information beyond aesthetics to users who can view the images. They   have no meaning in themselves and do not provide page <a href="http://www.w3.org/TR/WCAG20/#contentdef">content</a>.</p>
<p>Purely decorative images <em title="must" class="rfc2119">must</em> be marked up so they can be ignored by <a href="http://www.w3.org/TR/WCAG20/#atdef">assistive technology</a> with a null   alt attribute (alt="") or preferably use CSS techniques. If the image isn't   providing the user any informative <a href="http://www.w3.org/TR/WCAG20/#contentdef">content</a> or enhancing greater   understanding of the <a href="http://www.w3.org/TR/WCAG20/#contentdef">content</a>, then the alt attribute <em title="must" class="rfc2119">must</em> be empty.</p>
<h4 id="har">Example 5.1</h4>
<div class="example">
  <p>Here's an example of an image being used as a decorative banner for a persons blog, the image offers no information and so should have an empty alt attribute. While it is not unacceptable to include decorative images inline, it is recommended if they are purely decorative to include the image using  CSS.</p>
  <p><strong>Example image in context:</strong></p>
  <div class="element1">
    <p><img src="images/border.gif" alt="" width="400" height="30"></p>
    <p><strong>Clara's Blog</strong></p>
    <p>Welcome to my blog...</p>
  </div>
  
  <p><strong>Example code:</strong></p>
  <pre>&lt;p&gt;&lt;img src="border.gif" <strong>alt=""</strong> width="400" height="30"&gt;&lt;/p&gt;

&lt;h1<strong></strong>&gt;Clara's Blog&lt;/h1&gt;
&lt;p&gt;Welcome to my blog...&lt;/p&gt;</pre>
</div>
<h4 id="has">Related  techniques and resources</h4>
<ul>
  <li><a href="http://www.w3.org/TR/2007/WD-WCAG20-TECHS-20071211/H67.html">Using   null alt text and no title attribute on img elements for images that AT should   ignore (HTML)</a> [<cite><a href="#bib-WCAG20-TECHS" rel="biblioentry" class="bibref">WCAG20-TECHS</a></cite>]</li>
  <li><a href="http://www.w3.org/TR/2007/WD-WCAG20-TECHS-20071211/C9.html">Using   CSS to include decorative images (CSS)</a> [<cite><a href="#bib-WCAG20-TECHS" rel="biblioentry" class="bibref">WCAG20-TECHS</a></cite>]</li>
  <li><a href="http://www.w3.org/TR/2007/WD-WCAG20-TECHS-20071211/F38.html">Omitting the alt-attribute for non-text content used for decorative purposes only in   HTML</a> [<cite><a href="#bib-WCAG20-TECHS" rel="biblioentry" class="bibref">WCAG20-TECHS</a></cite>]</li>
  <li><a href="http://www.w3.org/TR/2007/WD-WCAG20-TECHS-20071211/F39.html">Providing   a text alternative that is not null. (e.g., alt="spacer" or alt="image") for   images that should be ignored by assistive technology</a> [<cite><a href="#bib-WCAG20-TECHS" rel="biblioentry" class="bibref">WCAG20-TECHS</a></cite>]</li>
</ul>
</div>
<div class="section" id="sec6">
<h3 id="images-enhance"><span class="secno">3.6 </span>Images that enhance the themes or subject matter of the page content</h3>
<p>An image that isn't discussed directly by the
  surrounding text but still has some relevance can be included in a page
  using the <code>img</code> element. Such images are more than mere decoration, they may augment the themes or subject matter of the page content and so
  still form part of the content. In these cases, the <code title="attr-img-alt">alt</code> attribute <em title="must" class="rfc2119">must</em> be present but its
  value <em title="may" class="rfc2119">may</em> be null. In cases where the image is closely related to the subject matter of the page content, the text alternative <em title="must" class="rfc2119">must</em> include a description of the content of the image or a description of the target of a linked page, if it is the content of a link. </p>
<h4 id="hat">Example 6.1</h4>
<div class="example">
  <p>Here is an example of an image closely related to the subject matter of the page content but not directly discussed. An
    image of a painting inspired by a poem, on a page reciting that
    poem. The following snippet shows an example. The image is a painting titled the "Lady of Shallot", it is inspired by the poem and its subject matter is derived from the poem. Therefore it is strongly recommended that a text alternative is provided. There is a short description of the content of the image in the <code title="attr-img-alt">alt</code> attribute and a link below the image to a longer description located at the bottom of the document. At the end of the longer description there is also a <a href="http://bit.ly/5HJvVZ">link to further information</a> about the painting.</p>
  <p><strong>Example Image </strong></p>
  <p><img src="images/shalott.jpg" alt="A painting inspired by Alfred Tennyson's poem The Lady of Shalott" width="338" height="234"> </p>
  <p><strong>Example code: </strong></p>
  <pre>&lt;hgroup&gt;&lt;h1&gt;The Lady of Shalott&lt;/h1&gt;
&lt;h2&gt;A poem by Alfred Lord Tennyson&lt;/h2&gt;&lt;/hgroup&gt;
&lt;figure&gt;
&lt;img src="shalott.jpeg" <strong>alt="Painting of a  young woman with long hair, sitting in a wooden boat. "</strong>&gt;
&lt;p&gt;&lt;a href="#des"&gt;Description of the painting&lt;/a&gt;.&lt;/p&gt;
&lt;/figure&gt;

&lt;!-- Full Recitation of Alfred, Lord Tennyson's Poem.  --&gt;

...
...
...
&lt;p id="des"&gt;<strong>The woman in the painting is wearing a flowing white dress. A large piece of intricately 
patterned fabric is draped over the side. In her right hand she holds the chain mooring the boat. Her expression 
is mournful. She stares at a crucifix lying in front of her. Beside it are three candles. Two have blown out.</strong> 
<strong>&lt;a href="http://bit.ly/5HJvVZ"&gt;Further information about the painting&lt;/a&gt;.</strong>&lt;/p&gt;</pre>
</div>
<h4 id="hau">Example 6.2</h4>
<div class="example">
  <p>It is not always easy to write a useful text alternative for an image, another option is to provide a link to a description or further information about the image. </p>
  <p>In this example of  the same image, there is a short text alternative included in the alt attribute, in this case the text alternative is a description of the link target as the image is the sole content of a link. The link points to points to a page containing <a href="http://www.tate.org.uk/servlet/ViewWork?cgroupid=-1&amp;workid=15984">information about the painting</a>. Note a <code>title</code> has been included on the link for sighted mouse users, the <code>title</code> provides information about the link target.</p>
  <p><strong>Example image in context: </strong></p>
  <div class="element1">
    <p><strong>The Lady of Shalott</strong><br>
        <small>A poem by Alfred Lord Tennyson.</small></p>
    <p class="figure"><a href="http://bit.ly/5HJvVZ"><img src="images/shalott.jpg" alt="Information about this painting inspired by the poem." title="Information about this painting inspired by the poem." width="271" height="171"></a></p>
    <p><em>Full recitation of Alfred, Lord Tennyson's poem.</em></p>
  </div>
  <p><strong>Example code: </strong></p>
  <pre>&lt;hgroup&gt;&lt;h1&gt;The Lady of Shalott&lt;/h1&gt;
&lt;h2&gt;A poem by Alfred Lord Tennyson&lt;/h2&gt;&lt;/hgroup&gt;
&lt;figure&gt;&lt;a href="http://bit.ly/5HJvVZ" title="Information about this painting inspired by the poem."&gt;
&lt;img src="shalott.jpeg" <strong>alt="Information about this painting inspired by the poem."</strong>&gt;&lt;/a&gt;&lt;/figure&gt;

&lt;!-- Full Recitation of Alfred, Lord Tennyson's Poem.  --&gt;</pre>
  
</div>

  <!-- <h4>Example 6.3</h4>
  <div class="example">
    <p>In this example of  the same image a visible text caption is provided using the &lt;figure&gt; and &lt;figcaption&gt; elements.</p>
    <p>In this example of  the same image, there is a short text alternative included in the alt attribute, in this case the text alternative is a description of the link target as the image is the sole content of a link. The link points to points to a page containing <a href="http://www.tate.org.uk/servlet/ViewWork?cgroupid=-1&workid=15984">information about the painting</a>. Note a title has been included on the link for sighted mouse users, the title provides information about the link target.</p>
    <p><strong>Example code: </strong></p>
    <pre>
&lt;h1&gt;The Lady of Shalott&lt;/h1&gt;
&lt;h2&gt;A poem by Alfred Lord Tennyson&lt;/h2&gt;
&lt;figure&gt;
&lt;img src="shalott.jpeg" <strong>alt="A painting of a  young women with long hair sitting in a wooden boat, 
she is wearing a flowing white dress. A large piece of intricately patterned fabric is draped over the side. 
In her right hand she holds the chain mooring the boat. Her expression is mournful. She stares at a crucifix 
lying in front of her. Beside it are three candles. Two have blown out."</strong>&gt;
&lt;figcaption&gt;Painting by John William Waterhouse&lt;/figcaption&gt;
&lt;/figure&gt;
</pre>
</div> -->
 <h4 id="hav"> Example 6.3</h4>
<p>This example is similar to the previous example as it also contains a link pointing to an external source of information about the painting. The difference being that  text  is included after the image as content of the link. </p>
<p><strong>Note:</strong> In HTML5 unlike HTML 4 <a href="http://html5doctor.com/block-level-links-in-html-5/">links can contain 'block level' elements</a> such as the <code>p</code> element. The example below makes use of this change.</p>
<div class="example">
  <p><strong>Example image in context: </strong></p>
  <div class="element1">
    <p><strong>The Lady of Shalott</strong><br>
        <small>A poem by Alfred Lord Tennyson.</small></p>
    <div class="figure">
      <p><a href="http://bit.ly/5HJvVZ"><img src="images/shalott.jpg" alt="Painting of a woman in a white flowing dress, sitting in a small boat." width="302" height="212"></a></p>
      <p><a href="http://bit.ly/5HJvVZ">About this painting.</a></p>  </div>
      <p><em>Full recitation of Alfred, Lord Tennyson's poem.</em></p>
  
  </div>
  <p><strong>Example code: </strong></p>
  <pre>&lt;hgroup&gt;&lt;h1&gt;The Lady of Shalott&lt;/h1&gt;
&lt;h2&gt;A poem by Alfred Lord Tennyson&lt;/h2&gt;&lt;/hgroup&gt;
&lt;figure&gt;&lt;a href="http://bit.ly/5HJvVZ"&gt;
&lt;img src="shalott.jpeg" <strong>alt="Painting of a woman in a white flowing dress, sitting in a small boat."</strong>&gt;
&lt;p&gt;<strong>About this painting.</strong>&lt;/p&gt;&lt;/a&gt;&lt;/figure&gt;

&lt;!-- Full Recitation of Alfred, Lord Tennyson's Poem.  --&gt;</pre>
</div>
<h4 id="haw">Example 6.4</h4>
<div class="example">
  <p>Here is another example of the same image used in a different context. In this case it is used to add a bit of medieval themed decoration to an advertisement. As the image bears no direct relation to the content of the page it is considered appropriate to use an empty alt attribute. It can also be considered appropriate to provide a brief description of the image as some users who cannot view images appreciate having information provided about images of paintings and photographs regardless of the context in which the images are used. As decisions about when to provide a text alternative are based on context of use, both options are considered to be conforming HTML5.</p>
  <p><strong>Example 1 Image in context: </strong></p>
  <div class="element1">
    <p><b>Medieval Nights</b></p>
    <p><img src="images/shalott.jpg" alt="" width="188" height="129"></p>
    <p>Join us for our medieval theme nights every Friday at Boaters Bar, on the riverside, Kingston upon  Thames.</p>
  </div>
  <p><strong>Example code 1: </strong></p>
  <pre>&lt;h1&gt;Medieval Nights&lt;/h1&gt;

&lt;p&gt;&lt;img src="shalott.jpeg" <strong>alt=""</strong>&gt;&lt;/p&gt;
&lt;p&gt;Join us for our medieval theme nights every Friday at 
Boaters Bar,on the riverside, Kingston upon Thames.&lt;/p&gt;
</pre>
  <p><strong>Example 2 Image in context: </strong></p>
  <div class="element1">
    <p><b>Medieval Night</b></p>
    <p><img src="images/shalott.jpg" alt="" width="188" height="129"></p>
    <p>Members and friends of the blind and low vision users group are invited to a medieval theme night on Friday at Boaters Bar, on the riverside, Kingston upon  Thames.</p>
  </div>
  <p><strong>Example code 2: </strong></p>
  <pre>&lt;h1&gt;Medieval Nights&lt;/h1&gt;

&lt;figure&gt;&lt;img src="shalott.jpeg" <strong>alt="Painting of a woman in a white flowing dress, sitting in a small boat."</strong>&gt;&lt;/figure&gt;
&lt;p&gt;Members and friends of the blind and low vision users group are invited to a medieval 
theme night on Friday at Boaters Bar, on the riverside, Kingston upon Thames.&lt;/p&gt;</pre>
</div>
<h4 id="hax">Related  techniques and resources</h4>
<ul>
  <li><a href="http://www.webaim.org/projects/screenreadersurvey/#images">Survey of Preferences of Screen Readers Users - Images</a></li>
  <li><a href="http://www.rnib.org.uk/LIVINGWITHSIGHTLOSS/LEISURECULTURE/ARTSCRAFTS/PAINTING/Pages/audio_description_painting.aspx">Try audio describing a painting</a></li>
  <li><a href="http://www.vsarts.org/x6020.xml">Blind Imagination: Pictures into Word</a></li>
  <li><a href="http://www.w3.org/TR/2007/WD-WCAG20-TECHS-20071211/H30.html">Providing link text that describes the purpose of a link   for anchor elements</a> [<cite><a href="#bib-WCAG20-TECHS" rel="biblioentry" class="bibref">WCAG20-TECHS</a></cite>]</li>
  <li><a href="http://www.w3.org/TR/2007/WD-WCAG20-TECHS-20071211/F38.html">Providing a text alternative that identifies the purpose   of the non-text content</a> [<cite><a href="#bib-WCAG20-TECHS" rel="biblioentry" class="bibref">WCAG20-TECHS</a></cite>]</li>
</ul>
</div>
<div class="section" id="sec7">
<h3 id="img-not-for-user"><span class="secno">3.7 </span>An image not intended for the user</h3>
<p>Generally authors should avoid using <code>img</code> elements
  for purposes other than showing images.</p>
<p>If an <code>img</code> element is being used for purposes other
  than showing an image, e.g. as part of a service to count page
  views, then an empty <code title="attr-img-alt">alt</code> attribute <em title="must" class="rfc2119">must</em> be included. In such cases, the <code title="attr-dim-width">width</code> and <code title="attr-dim-height">height</code> attributes should both
  be set to zero.</p>
<h4 id="hay">Example 7.1</h4>
<div class="example">
  <p>An example of an img element used to collect web page statistics. The alt attribute is empty.</p>
  <p><strong>Example code:</strong></p>
  <pre>&lt;p&gt;&lt;img src="http://server3.web-stat.com/count.pl?octafish.com" 
width="0" height="0" <strong>alt=""</strong>&gt;&lt;/p&gt;

</pre>
</div>
<h4 id="haz">Related  techniques and resources</h4>
<ul>
  <li><a href="http://www.w3.org/TR/2007/WD-WCAG20-TECHS-20071211/H67.html">Using   null alt text and no title attribute on img elements for images that AT should ignore (HTML)</a> [<cite><a href="#bib-WCAG20-TECHS" rel="biblioentry" class="bibref">WCAG20-TECHS</a></cite>]</li>
</ul>
</div>
<div class="section" id="sec8">
<h3 id="icons"><span class="secno">3.8 </span>Icons</h3>
<p>An icon is usually a simple picture representing a program, action, data file or a concept. Icons are intended to   help users of visual browsers to recognize features at a glance.</p>
<p>In some cases, the icon is supplemental to a text label conveying the same   meaning. In those cases, an empty <code>alt</code> attribute <em title="must" class="rfc2119">must</em> provided. </p>
<p>In other cases the icon adds emphasis to text content that needs to be conveyed textually, In such cases a text alternative <em title="must" class="rfc2119">must</em> be provided.</p>
<h4 id="hba">Example 8.1</h4>
<div class="example">
  <p>In this example, we have a link pointing to a site's home page, the link contains a house icon image and the text "home". The image has an empty alt text. Where images are used in this way, it is also be appropriate to add the image using CSS. </p>
  <p><strong>Example Image in context: </strong></p>
  <div class="element">
    <p><img src="images/home.gif" alt="A house icon next to the word 'home'." width="66" height="29"></p>
  </div>
  
  <p><strong>Example code 1 - inline image:</strong></p>
  <pre>&lt;a href="home.html"&gt;
&lt;img src="icon.gif" width="15" height="15" <strong>alt=""</strong>&gt;Home&lt;/a&gt;


</pre>
  <p><strong>Example code 2 - CSS image:</strong></p>
  <pre>  #home:before
 {
  content: url(home.png);
 }


 &lt;a href="home.html" id="home"&gt;Home&lt;/a&gt;</pre>
</div>
<h4 id="hbb">Example 8.2</h4>
<div class="example">
  <p>In this example, we have a warning message, with a warning icon. The icon emphasizes the importance of the message and identifies it as a particular type of content. Where images are used in this way, it is not appropriate to add the image using CSS. </p>
  <p><strong>Example Image in context: </strong></p>
  <div class="element1">
    <p><img src="images/warning.gif" alt="Warning!" width="38" height="30"> <strong>Your session is about to expire.</strong></p>
  </div>
  <p><strong>Example code:</strong></p>
  <pre>&lt;p&gt;&lt;strong&gt;&lt;img src="warning.gif" width="15" height="15" <strong>alt="Warning!"</strong>&gt;
Your session is about to expire&lt;/strong&gt;&lt;/p&gt;

</pre>
</div>
<h4 id="hbc">Example 8.3</h4>
<div class="example">
  <p>In this example, we have a warning message, with a warning icon. The word "Warning!" is in emphasized text next the the icon. In this case the icon is redundant and therefore the <code>img </code>element <em title="must" class="rfc2119">must</em> have an empty <code>alt</code> attribute. It would also be appropriate to add the icon using CSS.</p>
  <p><strong>Example Image in context: </strong></p>
  <div class="element1">
    <p><img src="images/warning.gif" alt="Warning!" width="38" height="30"> <strong>Warning!</strong> Your session is about to expire.</p>
  </div>
  <p><strong>Example code:</strong></p>
  <pre>&lt;p&gt;&lt;img src="warning.gif" width="15" height="15" <strong>alt=""</strong>&gt;
&lt;strong&gt;Warning!&lt;/strong&gt; 
Your session is about to expire&lt;/p&gt;

</pre>
</div>
</div>
<div class="section" id="sec9">
<h3 id="pictures"><span class="secno">3.9 </span>Images of Pictures</h3>
<p>Images of pictures or graphics include visual      representations of objects, people, scenes, abstractions, etc.      This <a href="http://www.w3.org/TR/WCAG20/#non-text-contentdef">non-text      content</a> can convey a significant amount of information      visually or provide a <a href="http://www.w3.org/TR/WCAG20/#sensoryexpdef">specific      sensory experience</a> to a sighted person. Examples include photographs, paintings, drawings and artwork.</p>
<p>An appropriate text alternative for a picture is a brief description, or <a href="http://www.w3.org/TR/WCAG20/#namedef">name</a>. As in all text alternative authoring decisions, writing suitable text alternatives for pictures requires human judgment. The text value is subjective to the context where the image is used and the page author's writing style. Therefore, there is no single 'right' or 'correct' piece of alt text for any particular image. In  addition to providing a short <a href="http://www.w3.org/TR/WCAG20/#text-altdef">text alternative</a> that gives a brief description of the <a href="http://www.w3.org/TR/WCAG20/#non-text-contentdef">non-text content</a>, also providing <a href="http://www.w3.org/TR/WCAG20/#suppcontentdef">supplemental content</a> through another means when appropriate may be useful.</p>
<h4 id="hbe">Example 9.1</h4>
<p>This example shows an image uploaded to a photo-sharing site. The photo is of a cat,      sitting in the bath. The image has a text alternative provided using the <code>img</code> elements <code>alt</code> attribute. It also has an  caption provided by including the <code>img</code> element in a <code>figure</code> element and using a <code>figcaption</code> element to identify the caption text. The text alternative in  Example code 2 includes information  "photo" about the type of image, although this is not generally recommended, authors <em title="may" class="rfc2119">may</em> include such information in the <code>alt</code> attribute content.</p>
<div class="example">
  <p><strong>Example image in context:</strong></p>
  <div class="element1">
    <p><img src="images/lola.jpg" alt="Lola the cat sitting under an umbrella in the bath tub." width="300" height="242"></p>
    <p>Lola prefers a bath to a shower.</p>
  </div>
  <p><strong>Example code 1:</strong></p>
  <pre>&lt;figure&gt;  
&lt;img src="1100670787_6a7c664aef.jpg" <strong>alt="Lola the cat sitting under an umbrella in the bath tub."</strong>&gt; 
 &lt;figcaption&gt;Lola prefers a bath to a shower.&lt;/figcaption&gt;  
&lt;/figure&gt;  
</pre>
  <p><strong>Example code 2:</strong></p>
  <pre>&lt;figure&gt;  
&lt;img src="1100670787_6a7c664aef.jpg" <strong>alt="Photo of Lola the cat sitting under an umbrella in the bath tub."</strong>&gt; 
 &lt;figcaption&gt;Lola prefers a bath to a shower.&lt;/figcaption&gt;  
&lt;/figure&gt;  </pre>
</div>
<h4 id="hbf">Example 9.2</h4>
<p>Context: An image on a page explaining in general terms      Rorschach inkblot personality tests. The image is an abstract      free form which is subjective to individual interpretation.</p>
<div class="example">
  <p><strong>Image example in context:</strong></p>
  <div class="element1">
    <blockquote cite="http://en.wikipedia.org/wiki/Rorschach_test#History">Using interpretation of "ambiguous designs" to assess an individual's   personality is an idea that goes back to Leonardo da Vinci and Botticelli. Interpretation of   inkblots was central to a game from the late 19th century. Rorschach's, however,   was the first systematic approach of this kind.</blockquote>
    <p><img src="images/inkblot1.jpg" alt="An abstract, freeform inkblot." width="300" height="197"></p>
    <p>The first of the ten cards in the Rorschach test.</p>
  </div>
  <p><strong>Code Example:</strong></p>
  <pre>&lt;figure&gt;   
&lt;img src="Rorschach1.jpg" <strong>alt="An abstract, free form inkblot."</strong>&gt;  
&lt;figcaption&gt;The first of the ten cards in the Rorschach test.&lt;/figcaption&gt;   
&lt;/figure&gt;  </pre>
</div>
<h4 id="hbg">Related  techniques and resources</h4>
<ul>
  <li><a href="http://dev.w3.org/html5/markup/figure.html#figure">The HTML5 <code>figure</code> element</a></li>
  <li><a href="http://dev.w3.org/html5/markup/figcaption.html">The HTML5 <code>figcaption</code> element</a></li>
</ul>
</div>
<div class="section" id="sec10">
<h3 id="webcam"><span class="secno">3.10 </span>Webcam images</h3>
<p>Webcam images are static images that are automatically updated periodically. Typically the images are from a fixed viewpoint, the images may update on the page automatically as each new image is uploaded from the camera or the user may be required to refresh the page to view an updated image. Examples include  traffic and weather cameras.</p>
<h4 id="hbgg">Example 10.1</h4>
<p>This example is fairly typical; the title and a time stamp are included in the image, automatically generated by the webcam software. It would be better if the text information was not included in the image, but as it is part of the image, it is required that it is provided as a text alternative. A caption is also provided using the <code>figure</code> and <code>figcaption</code> elements.  As the image is provided to give a visual indication of the current weather near Sopwith House, a link to a local weather forecast is provided, as with automatically generated and uploaded webcam images it may be impractical to provide such information as a text alternative. </p>
<p>The text of the alt attribute includes a prose version of the timestamp, designed to make the text more understandable when announced by text to speech software.  The text alternative also includes a description of some aspects of what can be seen in the image which are unchanging, although weather conditions and time of day change. </p>
<p><strong>Note: </strong></p>
<ul>
  <li><code>aria-describedby</code> is used to explicitly associate the caption with the image as the <code>figure</code> and <code>figcaption</code> elements are not currently supported.</li>
  <li>The timestamp information in the text alternative will need to be updated each time the image is updated, this can be easily be achieved using scripting on the server or  client side.</li>
</ul>
<p>Context: A webcam image updated every hour, with a viewpoint from the top of Sopwith House, looking north.</p>
<div class="example">
  <p><strong>Image example in context:</strong></p>
  <div class="element1">
    <p><img src="images/webcam1.jpg" alt="Sopwith house weather cam. Taken on the 21/04/10 at 11:51 and 34 seconds. 
In the foreground are the safety rails on the flat part of the roof. Nearby ther are low rise industrial buildings, beyond those are block of flats. 
In the distance there's a church steeple." width="296" height="225"></p>
    <p>View from the top of Sopwith house, looking towards North Kingston.</p>
    <p>This image is updated every hour.</p>
    <p>View the <a href="http://news.bbc.co.uk/weather/forecast/4296?area=Kingston">latest weather details</a> for Kingston upon Thames.</p>
  </div>
  <p><strong>Code Example:</strong></p>
  <pre>&lt;figure&gt;   
&lt;img src="webcam1.jpg" <strong>alt="Sopwith house weather cam. Taken on the 21/04/10 at 11:51 and 34 seconds. 
In the foreground are the safety rails on the flat part of the roof. Nearby there are low rise industrial buildings, 
beyond are blocks of flats. In the distance there's a church steeple."</strong> aria-describedby="s1"&gt;  
&lt;figcaption id="s1"&gt;View from the top of Sopwith house, looking towards north Kingston.&lt;/figcaption&gt;
&lt;p&gt;This image is updated every hour.&lt;/p&gt;
&lt;p&gt;View the &lt;a href="http://news.bbc.co.uk/weather/forecast/4296?area=Kingston"&gt;
latest weather details&lt;/a&gt; for Kingston upon Thames.&lt;/p&gt;   
&lt;/figure&gt;  </pre>
</div>
<h4 id="hbh">Example 10.2</h4>
<p>This example is the same as Example 10.1 except  the descriptive part of the text alternative is not in the alt attribute, it is in a paragraph associated with the image using <code>aria-describedby</code>. </p>
<p><strong>Note: </strong>the <code>aria-describedby</code> attribute on the <code>img</code> element contains 2 <code>id</code> values. That of the image caption and the images longer text alternative. For browsers that support <code>aria-describedby</code> this will result in the text content of the referenced elements be joined together as the content of the images accessible description:</p>
<p>"View from the top of Sopwith house, looking towards north Kingston. In the foreground of the image are the safety rails on the flat part of the roof. 
  Nearby there are low rise industrial buildings, beyond are blocks of flats. 
  In the distance there's a church steeple."</p>
<p>Context: A webcam image updated every hour, with a viewpoint from the top of Sopwith house, looking north.</p>
<div class="example">
  <p><strong>Image example in context:</strong></p>
  <div class="element1">
    <p><img src="images/webcam1.jpg" alt="Sopwith house weather cam. Taken on the 21/04/10 at 11:51 and 34 seconds." width="296" height="225"></p>
    <p>View from the top of Sopwith house, looking towards North Kingston.</p>
    <p>This image is updated every hour.</p>
    <p>View the <a href="http://news.bbc.co.uk/weather/forecast/4296?area=Kingston">latest weather details</a> for Kingston upon Thames.</p>
    <p><strong>Sopwith House Weather cam image description:</strong></p>
    <p>In the foreground are the safety rails on the flat part of the roof. Nearby there are low rise industrial buildings, 
      beyond are blocks of flats. In the distance there's a church steeple.</p>
  </div>
  <p><strong>Code Example:</strong></p>
  <pre>&lt;figure&gt;   
&lt;img src="webcam1.jpg" <strong>alt="Sopwith house weather cam. Taken on the 21/04/10 at 11:51 and 34 seconds."</strong> <strong>aria-describedby="s1 s2"</strong>&gt;  
&lt;figcaption id="s1"&gt;View from the top of Sopwith house, looking towards north Kingston.&lt;/figcaption&gt;
&lt;p&gt;This image is updated every hour.&lt;/p&gt;
&lt;p&gt;View the &lt;a href="http://news.bbc.co.uk/weather/forecast/4296?area=Kingston"&gt;
latest weather details&lt;/a&gt; for Kingston upon Thames.&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;Sopwith House Weather cam image description:&lt;/strong&gt;&lt;/p&gt;
<strong>&lt;p id="s2"&gt;In the foreground of the image are the safety rails on the flat part of the roof. 
Nearby there are low rise industrial buildings, beyond are blocks of flats. 
In the distance there's a church steeple.&lt;/p&gt;</strong>  
&lt;/figure&gt;  
</pre>
</div>
<h4 id="hbi">Example 10.3</h4>
<p>The previous webcam examples rely upon the correct time and and date information being inserted via scripting each time the image is updated. If this is not possible, the text alternative should instead include a brief description of the text information that changes each time the image is updated. 2 versions are provided the first includes the description as part of the alt attribute content the second includes it as part of the longer text alternative below the image. both examples use include the longer text alternative in a paragraph associated with the image using <code>aria-describedby</code>. </p>
<p>Context: A webcam image updated every hour, with a viewpoint from the top of Sopwith house, looking north.</p>
<div class="example">
  <p><strong>Image example in context:</strong></p>
  <div class="element1">
    <p><img src="images/webcam1.jpg" alt="Sopwith house weather cam. Includes date and time information indicating when the image was taken." width="296" height="225"></p>
    <p>View from the top of Sopwith house, looking towards North Kingston.</p>
    <p>This image is updated every hour.</p>
    <p>View the <a href="http://news.bbc.co.uk/weather/forecast/4296?area=Kingston">latest weather details</a> for Kingston upon Thames.</p>
    <p><strong>Sopwith House Weather cam image description:</strong></p>
    <p>In the foreground are the safety rails on the flat part of the roof. Nearby there are low rise industrial buildings, 
      beyond are blocks of flats. In the distance there's a church steeple.</p>
  </div>
  <p><strong>Code Example 1:</strong></p>
  <pre>&lt;figure&gt;   
&lt;img src="webcam1.jpg" <strong>alt="Sopwith house weather cam. Includes date and time information indicating when the image was taken."</strong> <strong>aria-describedby="s1 s2"</strong>&gt;  
&lt;figcaption id="s1"&gt;View from the top of Sopwith house, looking towards north Kingston.&lt;/figcaption&gt;
&lt;p&gt;This image is updated every hour.&lt;/p&gt;
&lt;p&gt;View the &lt;a href="http://news.bbc.co.uk/weather/forecast/4296?area=Kingston"&gt;
latest weather details&lt;/a&gt; for Kingston upon Thames.&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;Sopwith House Weather cam image description:&lt;/strong&gt;&lt;/p&gt;
<strong>&lt;p id="s2"&gt;In the foreground of the image are the safety rails on the flat part of the roof. 
Nearby there are low rise industrial buildings, beyond are blocks of flats. 
In the distance there's a church steeple.&lt;/p&gt;</strong>  
&lt;/figure&gt; </pre>
  <p><strong>Code Example 2:</strong></p>
  <pre>&lt;figure&gt;   
&lt;img src="webcam1.jpg" <strong>alt="Sopwith house weather cam."</strong> <strong>aria-describedby="s1 s2"</strong>&gt;  
&lt;figcaption id="s1"&gt;View from the top of Sopwith house, looking towards north Kingston.&lt;/figcaption&gt;
&lt;p&gt;This image is updated every hour.&lt;/p&gt;
&lt;p&gt;View the &lt;a href="http://news.bbc.co.uk/weather/forecast/4296?area=Kingston"&gt;
latest weather details&lt;/a&gt; for Kingston upon Thames.&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;Sopwith House Weather cam image description:&lt;/strong&gt;&lt;/p&gt;
<strong>&lt;p id="s2"&gt;</strong>In the foreground of the image are the safety rails on the flat part of the roof. 
Nearby there are low rise industrial buildings, beyond are blocks of flats. 
In the distance there's a church steeple.<strong>
 Across the top of the image is date and time information indicating when it was taken.&lt;/p&gt;</strong>  
&lt;/figure&gt; </pre>
</div>

<h4 id="hbj">Related  techniques and resources</h4>
<ul>
  <li> <a href="http://www.w3.org/WAI/PF/aria-practices/#Descriptions"><abbr
  title="Accessible Rich Internet Applications">WAI-ARIA</abbr> Authoring
  Practices 1.0, 4.1.2 Describing</a> [<cite><a
  href="#bib-WAI-ARIA-PRACTICES" rel="biblioentry"
  class="bibref">WAI-ARIA-PRACTICES</a></cite>]</li>
  <li><a href="http://dev.w3.org/html5/markup/figure.html#figure">The HTML5   figure element</a></li>
  <li><a href="http://dev.w3.org/html5/markup/figcaption.html">The HTML5   figcaption element</a></li>
</ul>
</div>
<div class="section" id="sec11">
<h3 id="imgslices"><span class="secno">3.11 </span>A group of images that form a single larger picture with and without links</h3>
<p>When a picture has been sliced into smaller image files that are then displayed   together to form the complete picture again, one of the images <em title="must" class="rfc2119">must</em> have its alt attribute set as   per the relevant rules that would be appropriate for the picture as a whole, and   then all the remaining images <em title="must" class="rfc2119">must</em> have an empty alt attribute.</p>
<h4 id="hbii">Example 11.1</h4>
<div class="example">
  <p>In this example, a picture representing a company logo for the <span title="">PIP Corporation</span> has been split into two pieces, the first containing   the letters "PIP" and the second with the word "CO". The alternative text   ("PIP CO") is all in the first image.</p>
  <p><strong>Example Image:</strong></p>
  <div class="element1">
    <p><img src="images/pip.gif" alt="PIPCO" style="border:none" width="99" height="64"><img src="images/co.gif" alt="" style="border:none" width="103" height="64"></p>
  </div>
  <p><strong>Example code:</strong></p>
  <pre>&lt;h1&gt;&lt;img src="pip.gif" <strong>alt="PIP CO"</strong>&gt;&lt;img src="co.gif" <strong>alt=""</strong>&gt;&lt;/h1&gt;

</pre>
</div>
<h4 id="hbk">Example 11.2</h4>
<div class="example">
  <p>In this example, a picture representing a company logo for the <span title="">PIP Corporation</span> has been split into two pieces, the first containing   the word "PIP" and the second with the abbreviated word "CO". The images are the sole content of a link to the PIPCO home page. In this case the text alternative <em title="must" class="rfc2119">must</em> be a description of the link target. The alternative text   ("PIP CO home") is all in the first image. </p>
  <p><strong>Example Image:</strong></p>
  <div class="element1">
    <p><a href="#"><img src="images/pip.gif" alt="PIP CO" style="border:none" width="99" height="64"><img src="images/co.gif" alt="" style="border:none" width="103" height="64"></a></p>
  </div>
  <p><strong>Example code:</strong></p>
  <pre>&lt;h1&gt;&lt;a href="pipco-home.html"&gt;
&lt;img src="pip.gif" <strong>alt="PIP CO home"</strong>&gt;&lt;img src="co.gif" <strong>alt=""</strong>&gt;&lt;/a&gt;&lt;/h1&gt;

</pre>
</div>
</div>
<div class="section" id="sec12">
<h3 id="unknown"><span class="secno">3.12 </span> When a text alternative is unknown at the time of publication</h3>
<p>In some cases an image may be included in a published document, but the author is unable to provide an appropriate text alternative. In such cases the minimum conformance requirement is to provide a caption for the image. The caption <em title="must" class="rfc2119">must</em> be provided using   the <code>figcaption</code> element and the <code>alt</code> attribute. The use of <code>figcaption</code> is recommended over the use of the <code>alt</code> attribute as the <code>figcaption</code> element is designed as a container for caption text, while the alt attribute is designed as a container for a text alternative. In practice the <code>alt</code> attribute has and will continue to provide a more generic method for providing information about an image until such times that the <code>figcaption</code> element is well supported in browsers and assistive technologies.</p>
<h4 id="hbii2">Example 12.1</h4>
<div class="example">
  <p>In  example A, a person uploads a photo to a photo sharing site, the alt attribute content identifies the image "photo 1" while the caption provides the image file name. Neither the alt or the caption provide for text alternative for the image, but the image is identified and implicitly associated with the caption via the term "photo1". In example B, the caption has been updated to provide a caption that can also serve as a text alternative.</p>
  <p><strong>Examples of an image in context:</strong></p>
  <h5 id="example-a">Example A:</h5>
  <p class="warning">The caption text in Example A is not a suitable text alternative and is not conforming to the Web Accessibility Guidelines 2.0. <span>[<cite><a href="#bib-WCAG20" rel="biblioentry" class="bibref">WCAG20</a></cite>]</span></p>
  <div class="element1">
  <p><strong>My Photos &gt; Photos of Clara</strong></p>
<p><img src="images/clara.jpg" alt="photo 1" width="400" height="344"></p>
  <p><strong>Photo 1: clara.jpg, taken on 12/11/2010.</strong></p>
  </div>
  <p><strong>Example code:</strong></p>
  <pre>&lt;figure&gt;
&lt;img src="clara.jpg" <strong>alt="Photo 1."</strong>&gt;
&lt;figcaption&gt;<strong>Photo 1: clara.jpg, taken on 12/11/2010.</strong>&lt;/figcaption&gt;<br>&lt;/figure&gt;
</pre>
  <h5 id="example-b">Example B:  </h5>
  <div class="element1">
    <p><strong>My Photos &gt; Photos of Clara</strong></p>
    <p><img src="images/clara.jpg" alt="photo 1" width="400" height="344"></p>
    <p><strong>Photo 1: Clara in her bedroom, playing her 'electric' toy guitar.
She looks like a real 'Rock &amp; Roll' girl.</strong><strong></strong></p>
  </div>
  <p><strong>Example code:</strong></p>
  <pre>&lt;figure&gt;
&lt;img src="clara.jpg" <strong>alt="Photo 1."</strong>&gt;
&lt;figcaption&gt;<strong>Photo 1: Clara in her bedroom, playing her 'electric' toy guitar.
She looks like a real 'Rock &amp; Roll' girl.</strong>&lt;/figcaption&gt;<br>&lt;/figure&gt;</pre></div>

</div>
<div class="section" id="sec13">
<h3 id="captcha"><span class="secno">3.13 </span>CAPTCHA Images </h3>
<p><a title="http://www.w3.org/TR/WCAG20/#atdef" href="http://www.w3.org/TR/WCAG20/#CAPTCHAdef">CAPTCHA</a> stands for   "Completely Automated Public Turing test to tell Computers and Humans Apart".   CAPTCHA images are used for security purposes to confirm that <a title="http://www.w3.org/TR/WCAG20/#contentdef" href="http://www.w3.org/TR/WCAG20/#contentdef">content</a> is being accessed by   a person rather than a computer. This authentication is done through visual   verification of an image. CAPTCHA typically presents an image with characters or   words in it that the user is to re-type. The image is usually distorted and has   some noise applied to it to make the characters difficult to read. </p>
<p>Provide <a title="http://www.w3.org/TR/WCAG20/#text-altdef" href="http://www.w3.org/TR/WCAG20/#text-altdef">text alternatives</a> that   identify and describe the purpose of the <a title="http://www.w3.org/TR/WCAG20/#non-text-contentdef" href="http://www.w3.org/TR/WCAG20/#non-text-contentdef">non-text content</a>,   and provide alternative forms of the CAPTCHA using output modes for different   types of sensory perception. For instance provide an audio alternative along   with the visual image. Locate the audio option right next to the visual one.   This helps but is still problematic for people without sound cards, the   deaf-blind, and some low hearing people. Another method is to include a form   that asks a question along with the visual image. This helps but is can be   problematic for people with cognitive impairments. </p>
<p><span class="warning">It is strongly recommended that alternatives to CAPTCHA be used, as all forms of CAPTCHA introduce unacceptable barriers to entry for users with disabilities. Further information is available in the W3C's <a href="http://www.w3.org/TR/turingtest/">Inaccessibility of CAPTCHA</a>.</span></p>
<h4 id="hbl">Example 13.1</h4>
<p>This example shows a <a href="http://recaptcha.net/learnmore.html">CAPTCHA test</a> which uses a distorted image of text. The text alternative in the alt attribute provides instructions for a user in the case where she cannot access the image content. </p>
<div class="example">
  <p><strong>Example Image:</strong></p>
  <div class="element">
    <p><img src="images/captcha.gif" alt="captcha containing the words 'aides' and 'sprucest'. The letters are distorted and the color of the letters and background is partially inverted," width="270" height="60"></p>
  </div>
  <p><strong>Example code:</strong> </p>
  <pre>&lt;img src="captcha.png" <strong>alt="An audio challenge follows if you cannot view this image."</strong>&gt; 
&lt;!-- audio CAPTCHA option that allows the user to listen and type the word --&gt;  
&lt;!-- form that asks a question --&gt;</pre>
</div>
<h4 id="hbm">Further Techniques </h4>
<ul>
  <li><a title="http://www.w3.org/TR/WCAG20-TECHS/G143.html" href="http://www.w3.org/TR/WCAG20-TECHS/G143.html">Providing a text alternative   that describes the purpose of the CAPTCHA</a> W3C Note. </li>
  <li><a title="http://www.w3.org/TR/2007/WD-WCAG20-TECHS-20071211/G144.html" href="http://www.w3.org/TR/2007/WD-WCAG20-TECHS-20071211/G144.html">Ensuring   that the Web Page contains another CAPTCHA serving the same purpose using a   different modality</a> W3C  Note. </li>
</ul>
</div>
<div class="section" id="sec14">
<h3 id="logos"><span class="secno">3.14 </span>Logos, insignia, flags, or emblems</h3>
<p>Many pages include logos, insignia, flags, or emblems, which    stand for  a company, organization,    project, band, software package, country, or other entity.</p>
<p>If the logo is the sole content of a link, the <a href="http://dev.w3.org/html5/spec/embedded-content-1.html#attr-img-alt">alt</a> attribute <em title="must" class="rfc2119">must</em>    contain a brief description of the link target.</p>
<h4 id="ex141">Example 14.1</h4>
<div class="example">
  <p><strong>Example:</strong></p>
  <div class="element">
    <p><a href="http://dev.w3.org/html5/spec/spec.html"><img src="images/HTML5_Logo.png" alt="HTML5 specification" width="128" height="128"></a></p>
  </div>
  <p><strong>Example code:</strong></p>
  <pre>&lt;a href="http://dev.w3.org/html5/spec/spec.html"&gt;
&lt;img src="HTML5_Logo.png" <strong>alt="HTML5 specification"</strong>&gt;&lt;/a&gt;</pre>
</div>
<h4 id="ex142">Example 14.2</h4>
<p>If the logo is being used to represent the entity, e.g. as a page    heading, the <a href="http://dev.w3.org/html5/spec/embedded-content-1.html#attr-img-alt">alt</a> attribute <em title="must" class="rfc2119">must</em>    contain the name of the entity being represented by the logo. The <a href="http://dev.w3.org/html5/spec/embedded-content-1.html#attr-img-alt">alt</a> attribute <em title="should not" class="rfc2119">should not</em> contain text like the word "logo", as it is not the fact that it is    a logo that is being conveyed, it's the entity itself. </p>
<div class="example">
  <p><strong>Example:</strong></p>
  <div class="element">
    <p><abbr title="World Wide Web Consortium"><a href="http://w3.org"><img src="images/w3c_home.png" alt="W3C web site" width="72" height="48"></a></abbr></p>
  </div>
  <p><strong>Example code:</strong></p>
  <pre>&lt;abbr title="World Wide Web Consortium"&gt;
&lt;img src="images/w3c_home.png" <strong>alt="W3C"</strong>&gt;
&lt;/abbr&gt;
</pre>
</div>

<h4 id="ex143">Example 14.3</h4>
<p>If the logo is being used next to the name of the what that    it represents, then the logo is supplemental, and its <a href="http://dev.w3.org/html5/spec/embedded-content-1.html#attr-img-alt">alt</a> attribute <em title="must" class="rfc2119">must</em> instead be    empty.</p>
<div class="example">
  <p><strong>Example:</strong></p>
  <div class="element">
    <p><abbr title="World Wide Web Consortium"><a href="http://w3.org"><img src="images/w3c_home.png" alt="W3C web site" width="72" height="48"></a></abbr>  W3C (World Wide Web Consortium)</p>
  </div>
  <p><strong>Example code:</strong></p>
  <pre>&lt;p&gt;&lt;img src="images/w3c_home.png" <strong>alt=""</strong>&gt;
 W3C (World Wide Web Consortium)&lt;/p&gt;</pre></div>
<h4 id="ex144">Example 14.4</h4>
<p>If the logo is  used alongside text discussing the subject or entity the logo represents, then <!--If the logo is actually being    discussed, then it is being used as a phrase or paragraph (the    description of the logo) with an alternative graphical    representation (the logo itself), and the first entry above    applies.-->the logo should have a text alternative, its identification as a logo may be included in the text alternative.</p>
<div class="example">
  <p><strong>Example:</strong></p>
  <div class="element1">
    <p style="float:left"><a href="http://dev.w3.org/html5/spec/spec.html"><img src="images/HTML5_Logo.png" alt="HTML5 logo" width="128" height="128"></a></p>
    
    <p>excerpt from Wikipedia</p>
    <blockquote cite="http://en.wikipedia.org/wiki/HTML5">
      <p><strong>HTML5</strong> is a language for structuring and presenting content for the World Wide Web, a core technology of the Internet. It is the latest revision of the HTML standard (originally created in 1990 and most recently standardized as HTML4 in 1997) and currently remains under development. Its core aims have been to improve the language with support for the latest multimedia while keeping it easily readable by humans and consistently understood by computers and devices (web browsers, parsers etc.). 
    </p></blockquote>
  </div>
  <p><strong>Example code:</strong></p>
  <pre style="clear:both">&lt;p&gt;&lt;img src="HTML5_Logo.png" 
<strong>alt="HTML5 logo: It looks like a shield with the text 'HTML' above  and the numeral '5' prominent on the face of the shield."</strong>&gt;&lt;/p&gt;

&lt;p&gt;excerpt from Wikipedia...&lt;/p&gt;</pre>
</div>
</div>
<div class="section" id="sec15">
<h3 id="inline"><span class="secno">3.15 </span>Inline images</h3>
<p>When images are used inline as part of the flow of text in a sentence, the text alternative <em title="must" class="rfc2119">must</em> be a word or phrase that makes sense in the context of the sentence it is contained in.</p>
<div class="example">
  <p><strong>Example Image:</strong></p>
  <div class="element1">
    <p><span class="inline">I <img src="images/heart.png" alt="love" width="27" height="24"> you.</span></p>
  </div>
  <p><strong>Example code:</strong> </p>
  <pre>I &lt;img src="heart.png" <strong>alt="love"</strong>&gt; you.
</pre>

  <p><strong>Example Image:</strong></p>
  <div class="element1">
    <p><span class="inline">My <img src="images/heart.png" alt="heart" width="27" height="24"> breaks.</span></p>
  </div>
  <p><strong>Example code:</strong></p>
  <pre>My &lt;img src="heart.png" <strong>alt="heart"</strong>&gt; breaks.</pre>
</div></div>
</div>
<hr>
<div class="section" id="methods">
<!--OddPage--><h2 id="methods2"><span class="secno">4. </span>Methods for Providing Text Alternatives</h2>
<h3 id="native">Native HTML methods</h3>

<div class="section" id="secm1">
<h3 id="altmethod"><span class="secno">4.1 </span>The <code>img</code> element <code>alt</code> attribute</h3>
<p>The primary method for providing text alternatives for images is by including text in the <code>img</code> element <code>alt</code> attribute.  In graphical   browsers the content of the alt attribute is typically displayed along with an indication (bordered area and/or an image icon) of the presence of an image when the image is not displayed, because the user has disabled image display or the image source information is incorrect. Assistive technologies such as screen readers will typically announce the presence of an image followed by the alt attribute content. Text based browsers  may display the alt attribute content  in brackets or in  different colored text or as the content of a link to the image or as text without any indication of the image or  prefixed with an indication of the image.</p>
<p><strong>Example:</strong></p>
<pre>&lt;img src="example.jpg" <strong>alt="Alternative text."</strong>&gt;</pre>
<h5 id="hd">Advantages:</h5>
<ul>
  <li>Robust support in most graphical &amp; non graphical web browsers and assistive technologies.</li>
  <li>Text alternative is explicitly associated with the image.</li>
  <li>Inclusion of text alternatives as alt attribute content does not impact upon the default visual display of content.</li>
</ul>
<h5 id="hdd">Disadvantages:</h5>
<ul>
  <li>Content of the alt attribute is not available to some users who may find it useful.</li>
  <li>If the alt attribute content is too long it may cause display issues in some browsers.</li>
  <li>If the alt attribute content is too long it may cause reading issues in some assistive technologies.</li>
  <li>Semantic structure cannot be added to alt attribute content.</li>
</ul>

<div class="section" id="secm2">
<h4 id="replacement"><span class="secno">4.1.1 </span>Is alt attribute content a replacement for an image?</h4>
<p>The answer to this question depends on the content of the image and the context the image is being used in:</p>
<ul>
  <li>When an image contains too much information to use the alt attribute as a container for a text alternative  the alt attribute content can be a label for the image. This label <em title="may" class="rfc2119">may</em> be a brief description that identifies the image. This <em title="should" class="rfc2119">should</em> be accompanied by a more complete text alternative that is programmatically associated with the image. Refer to <a href="#haee">Example 2.3</a>.</li>
  <li>When an image contains structured information that cannot be conveyed using the alt attribute as a container for a text alternative  the <code>alt</code> attribute content <em title="should" class="rfc2119">should</em> be a label for the image. This label <em title="may" class="rfc2119">may</em> be a brief description that identifies the image. This <em title="should" class="rfc2119">should</em> be accompanied by a structured text alternative that is programmatically associated with the image. Refer to <a href="#hag21">Example 2.5</a>.</li>
  <li>When an image is used to represent text and it is the authors intent the purpose of the using an image of text is to achieve a visual style, the alt attribute content <em title="should" class="rfc2119">should</em> be considered as a replacement for the image. Refer to <a href="#img-of-text">Section 3</a>.</li>
  <li>When an image is decorative and it is the authors intent that it not convey any information, an empty alt attribute <em title="should" class="rfc2119">should</em> be considered as an indication that the image can be safely ignored. Refer to <a href="#decorative">Section 5</a>.</li>
  <li>When it is the authors intent that image is not to be seen by users, an empty alt attribute <em title="should" class="rfc2119">should</em> be considered as an indication that the image can be safely ignored. Refer to <a href="#img-not-for-user">Section 7</a>.</li>
  <li>When an image is immediately proceeded or preceded by a text alternative and the image and the text alternative are not complex in nature, an empty alt attribute <em title="should" class="rfc2119">should</em> be considered as an indication that the image can be safely ignored.</li>
  <li>When an image is the sole content of a link, the alt attribute content <em title="should" class="rfc2119">should</em> be a brief description of the link target. Refer to <a href="#hba">Example 1.1</a>.</li>
  <li>When an image is the  content of a link and is immediately proceeded or preceded by a brief description of the link target, the <code>alt</code> attribute content <em title="should" class="rfc2119">should</em> be empty. Refer to <a href="#hba">Example 8.1</a>.</li>
  <li>When an image is the  content of a link that also contains structured text content, if the text content is a description of the link target, the <code>alt</code> attribute content <em title="may" class="rfc2119">may</em> be empty or a text alternative for the image. If the text content is not a description of the link target, the alt attribute content <em title="should" class="rfc2119">should</em> be a brief description of the link target. <a href="#hav">Refer to Example 6.3</a>.</li>
</ul>
</div>
<div class="section" id="secm3">
<h4 id="empty"><span class="secno">4.1.2 </span>Using an empty <code>alt</code> attribute <code>alt=""</code></h4>
<p>Circumstances in which <strong>it is</strong> appropriate to use an empty or null <code>alt</code> attribute:</p>
<ul>
  <li>An image is purely <a href="#decorative">decorative</a>.</li>
  <li>An image is not meant to be <a href="#img-not-for-user">visible to any user</a>.</li>
  <li>An image consists of text that is repeated as text or a <a href="#icons">graphical symbol</a> whose meaning is conveyed as text, immediately before or after the image.</li>
  <li>The image is part of a <a href="#imgslices">group of images</a> that  form a single larger picture and one of the other images in the group has a text alternative which serves as the text alternative for the single larger picture.</li>
  <li>The image is included as the content of a link and there is <a href="#hba">other content included</a> that clearly describes the link target.</li>
</ul>
<p>Circumstances in which <strong>it is not</strong> appropriate to use an empty or null <code>alt</code> attribute:</p>
<ul>
  <li>An image is contained within a <code>figure</code> element and has an associated caption provided using the <code>figcaption</code> element. Using an empty alt attribute hides an image from some users. If an image has a caption the image needs to be discoverable by users, otherwise a caption is present that refers to nothing for some users.</li>
  <li>An image contains relevant information not available in the same document as text. Using an empty alt attribute hides an image from some users, in order to have the possibility of interrogating the image, the image must be discoverable.</li>
  <li>An image contains relevant information,  an alternative interpretation of which is available in the same document as structured text. Using an empty alt attribute hides an image from some users, which is incorrect, the image is not meaningless, it  contains information which a range of users could interpret with the  aid of the short text alternative and longer description. It also provides a text  alternative for users who have images turned off in their browsers, so  they can, if they wish, load and view the image. If an empty <code>alt</code> attribute is present  there may be no indication that an image is present. Furthermore if a description of an image is provided in a document, a <a href="#hpa">programmatic association</a> between the image and the descriptive text is required, using an empty alt attribute on the image effectively precludes the assigning of a programmatic association.</li>
</ul>
</div>
<div class="section" id="m5">
<h4 id="he"><span class="secno">4.1.3 </span>How long should a  text alternative be?</h4>
<p>The answer to this question very much depends on the context an image is being used in. While there are no definitive right or wrong lengths for text alternatives provided using the <code>img</code> elements <code>alt</code> attribute, the general consensus is that if the text alternative is longer than  75-100 characters (1 to 2 sentences), it should not be considered a short text alternative and should not be presented using the <code>alt</code> attribute.</p>
</div>
</div>
<div class="section" id="m6">
<h3 id="hf"><span class="secno">4.2 </span>The <code>figure</code> and <code>figcaption</code> elements</h3>
<p>The <code>figure</code> and <code>figcaption</code> elements provide a method to explicitly associate a caption with with a variety of content including images. Any content inside the <code>figure</code> element that is not contained within the <code>figcaption</code> element is labelled by the content of the <code>figcaption</code> element. The <code>figcaption</code> content may be an adjunct to the text alternative provided using the alt attribute:</p>
<div class="example">
  <p>The <code>figcaption</code> content may be a text alternative for the image, obviating the need for a text alternative provided using the <code>alt</code> attribute. This would only be the case if the <code>figcaption</code> content provides an adequate text alternative for the visual content in the image:</p>
  <p><strong>Example A:</strong></p>
  <div class="element">
    <p><img src="images/shadows.jpg" alt="Shadow like figures and a graffiti tag drawn on the walls of a partially demolished building, illuminated by the light from a street lamp." width="400" height="310"></p>
  </div>
  <p><strong>Code example:</strong>:</p>
<pre>&lt;img src="example.jpg" <strong>alt="Shadow like figures and a graffiti tag drawn on the walls of a partially 
demolished building, illuminated by the light from a street lamp."</strong>&gt;</pre>
<p><strong>Example B: </strong></p>
<div class="element1">
  <p><img src="images/shadows.jpg" width="400" height="310" alt="Shadow like figures and a graffiti tag drawn on the walls of a partially demolished building, illuminated by the light from a street lamp."></p>
  <p><strong>Shadow like figures and a graffiti tag drawn on the walls of a     
 partially demolished building, illuminated by the light from a street lamp. </strong></p>
  
  

</div>  <p><strong>Code example:</strong></p>
<pre>&lt;figure&gt;   <br>&lt;img src="shadows.jpg"&gt;   <br>&lt;figcaption&gt;<strong> Shadow like figures and a graffiti tag drawn on the walls of a     
 partially demolished building, illuminated by the light from a street lamp. </strong>&lt;/figcaption&gt;   <br>&lt;/figure&gt;</pre>
</div>
<h5 id="hg">Advantages:</h5>
<ul>
  <li>When supported by browsers and assistive technology the content of the <code>figcaption</code> will be explicitly associated with the image.</li>
</ul>
<h5 id="hi">Disadvantages:</h5>
<ul>
  <li>The <code>figure</code> and <code>figcaption</code> elements are not currently accessibility supported by browsers or assistive technology. </li>
</ul>
</div>
<div class="section" id="secm7">
<h3 id="hv"><span class="secno">4.3 </span>The <code>img</code> element <code>title</code> attribute</h3>
<p>The <code>title</code> attribute <em title="must not" class="rfc2119">must not</em> be used to provide a text alternative for an image. The <code>title</code> attribute <em title="must not" class="rfc2119">must not</em> be used to provide a caption for an image, use the <code>figure</code> and <code>figcaption</code> elements to provide a caption, as described above.</p>
</div>
</div>
<hr>
<div class="section" id="gloss">
<!--OddPage--><h2 id="glossary"><span class="secno">5. </span>Glossary</h2>

<h3 id="api">Accessibility <abbr title="Application Programming Interface">API</abbr></h3>
 <p>Operating systems and other platforms provide a set of interfaces that expose information about <a href="http://www.w3.org/TR/2010/WD-wai-aria-20100916/terms#def_object">objects</a> and <a href="http://www.w3.org/TR/2010/WD-wai-aria-20100916/terms#def_event">events</a> to <a href="http://www.w3.org/TR/2010/WD-wai-aria-20100916/terms#def_at">assistive technologies</a>. Assistive technologies use these interfaces to get information about and interact with those <a href="http://www.w3.org/TR/2010/WD-wai-aria-20100916/terms#def_widget">widgets</a>. Examples of this are the <a href="http://java.sun.com/javase/technologies/accessibility/index.jsp">Java Accessibility <abbr title="Application Programming Interface">API</abbr></a> [<a href="http://www.w3.org/TR/wai-aria/references#ref_JAPI">JAPI</a>], <a href="http://msdn.microsoft.com/en-us/library/ms697270%28VS.85%29.aspx">Microsoft Active Accessibility</a> [<a href="http://www.w3.org/TR/wai-aria/references#ref_MSAA">MSAA</a>], <a href="http://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/Accessibility/cocoaAXIntro/cocoaAXintro.html">the Mac <acronym title="OS Ten">OS X</acronym> Accessibility Protocol</a> [<a href="http://www.w3.org/TR/wai-aria/references#ref_AXAPI">AXAPI</a>], the <a href="http://library.gnome.org/devel/atk/">Gnome Accessibility Toolkit (ATK)</a> [<a href="http://www.w3.org/TR/wai-aria/references#ref_ATK">ATK</a>], and <a href="http://www.linuxfoundation.org/collaborate/workgroups/accessibility/iaccessible2">IAccessible2</a> [<a href="http://www.w3.org/TR/wai-aria/references#ref_IA2">IA2</a>].
</p>
<h3 id="acc_name">Accessible name</h3>
<p>The accessible name is the name of a user interface element. Each platform <a href="#api">accessibility API</a> provides the accessible name property. The value of the accessible name   may be derived from a visible (e.g., the visible text on a button) or   invisible (e.g., the text alternative that describes an icon) property   of the user interface element.</p>
<h3 id="hbp">alt text </h3>
<p>Colloquial term for a text alternative provided  using the <code>alt</code> attribute of an <code>img</code> element.</p>
<h3 id="hbq">assistive technology</h3>
<p>Hardware and/or software that acts as a user agent, or along with a mainstream user agent, to provide functionality to meet the requirements of users with disabilities that go beyond those offered by mainstream user agents. A more <a href="http://www.w3.org/TR/WCAG20/#atdef">detailed explanation of assistive technology</a> is provided in the WCAG 2.0 glossary.</p>
<h3 id="hbr">content (Web content) </h3>
<p>Information and sensory experience to be communicated to the user by means of a user agent such as a web browser, including code or markup that defines the content's structure, presentation, and interactions. </p>
<h3 id="hpa">programmatic association</h3>
<p>It must  be possible for people using assistive technologies to find   the text alternative for an image when they encounter the image that they cannot   use. To accomplish this,  the text must be "programmatically   associated" with the image. This means that the user must be able to   use their assistive technology to find the alternative text (that they can use)   when they land on the image (that they can't use).</p>
<h3 id="hbs">non-text content </h3>
<p>Any content that is not a sequence of characters that can be programmatically determined or where the sequence is not expressing something in human language </p>
<p>Note: This includes ASCII Art (which is a pattern of characters), emoticons, leetspeak (which uses character substitution), and images representing text. </p>
<h3 id="hbt">Empty alt attribute or null alt attribute.</h3>
<p>An alt attribute with no content:</p>
<pre class="example">&lt;img src="null.gif" <strong>alt=""</strong>&gt;</pre>
<h3 id="hbu">Text alternative</h3>
<p><a title="definition: text" href="http://www.w3.org/TR/WCAG20/#textdef">Text</a> that is   programmatically associated with <a title="definition: non-text content" href="http://www.w3.org/TR/WCAG20/#non-text-contentdef">non-text   content</a> or referred to from text that is programmatically associated with   non-text content. Programmatically associated text is text whose location can be <a href="http://www.w3.org/TR/UNDERSTANDING-WCAG20/conformance.html#uc-programmatically-determined-head">programmatically determined</a> from the non-text content.</p>
</div>
<!--<section id="refer">
<h2 id="references">References</h2>
<dl>
  <dt>[<A href="#ref-html5">HTML5</A>] </dt>
  <dd><a href="http://dev.w3.org/html5/spec/spec.html">HTML5</a>, I. Hickson</dd>
  <dt>[<a href="http://www.apps.ietf.org/rfc/rfc2119.html">RFC2119</a>]</dt>
  <dd><a href="http://tools.ietf.org/html/rfc2119">Key words for use in RFCs to Indicate Requirement Levels</a>, S. Bradner. IETF.</dd>
  <dt>[<a href="http://www.w3.org/TR/WCAG20/">WCAG</a>]</dt>
  <dd>(Non-normative) <a href="http://www.w3.org/TR/WCAG20/">Web Content Accessibility Guidelines (WCAG) 2.0</a>, B. Caldwell, M. Cooper, L. Reid, G. Vanderheiden. W3C.</dd>
</dl>
</section>-->
<div class="section" id="ack">
<!--OddPage--><h2 id="acknowledgements"><span class="secno">6. </span>Acknowledgements</h2>
<p class="note">In no particular order and incomplete.</p>
<p>Laura Carlson, Josh O Connor, Gez Lemon, Anne van Kesteren, Ian Hickson, Mike Smith,  Mike Paciello, Bim Egan, Gregory Rosmaita, Michael Cooper, Janina Sajka, Matt May, Bevi Chagnon, Jonathan Avila, Pat Rees, Charlie Pike, Andy Maseyk, Rich Clark</p>
</div>
<div class="appendix section" id="references"><!--OddPage--><h2><span class="secno">A. </span>References</h2><div class="section" id="normative-references"><h3><span class="secno">A.1 </span>Normative references</h3><dl class="bibliography">
<dt id="bib-HTML5">[HTML5]</dt>
<dd>Ian Hickson.
 <a href="http://www.w3.org/TR/html5/"><cite>HTML 5.</cite></a> 05 April 2011. W3C Working Draft. (Work in progress.)
 URL: <a href="http://www.w3.org/TR/html5/">http://www.w3.org/TR/html5/</a>
</dd><dt id="bib-RFC2119">[RFC2119]</dt><dd>S. Bradner. <a href="http://www.ietf.org/rfc/rfc2119.txt"><cite>Key words for use in RFCs to Indicate Requirement Levels.</cite></a> March 1997. Internet RFC 2119.  URL: <a href="http://www.ietf.org/rfc/rfc2119.txt">http://www.ietf.org/rfc/rfc2119.txt</a> 
</dd></dl></div><div class="section" id="informative-references"><h3><span class="secno">A.2 </span>Informative references</h3><dl class="bibliography"><dt id="bib-WAI-ARIA-PRACTICES">[WAI-ARIA-PRACTICES]</dt><dd>Michael Cooper; Richard Schwerdtfeger; Lisa Pappas. <a href="http://www.w3.org/TR/2009/WD-wai-aria-practices-20090224"><cite>WAI-ARIA Best Practices.</cite></a> 24 February 2009. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2009/WD-wai-aria-practices-20090224">http://www.w3.org/TR/2009/WD-wai-aria-practices-20090224</a> 
</dd><dt id="bib-WCAG20">[WCAG20]</dt><dd>Michael Cooper; et al. <a href="http://www.w3.org/TR/2008/REC-WCAG20-20081211"><cite>Web Content Accessibility Guidelines (WCAG) 2.0.</cite></a> 11 December 2008. W3C Recommendation. URL: <a href="http://www.w3.org/TR/2008/REC-WCAG20-20081211">http://www.w3.org/TR/2008/REC-WCAG20-20081211</a> 
</dd><dt id="bib-WCAG20-TECHS">[WCAG20-TECHS]</dt><dd>Michael Cooper; et al. <a href="http://www.w3.org/TR/2008/NOTE-WCAG20-TECHS-20081211"><cite>Techniques for WCAG 2.0.</cite></a> 11 December 2008. W3C Note. URL: <a href="http://www.w3.org/TR/2008/NOTE-WCAG20-TECHS-20081211">http://www.w3.org/TR/2008/NOTE-WCAG20-TECHS-20081211</a> 
</dd></dl></div></div></body></html>