У меня есть несколько разделов <tbody>
в моем <table>
, и он читает каждый тег <th>
, содержащийся в таблице. У них есть уникальные атрибуты id и header, назначенные различным тегам th и td, поэтому мне непонятно, почему программа чтения с экрана NVDA выводит следующий вывод:
[row# tbody 1, column header 1 name]
[<th> tbody 2, column header 1 name]
[<th> tbody 3, column header 1 name]
Current tbody 4, column header 1 name
[output of column1 data]
[output of column2 data]
[output of column3 data]
[output of column4 data]
Структура HTML выглядит следующим образом: вот Pen также показывает эту проблему
caption{
text-align:left;
display: table-caption;
clip: rect(1px, 1px, 1px, 1px);
height:1px;
overflow:hidden;
position: absolute;
top: auto;
width: 1px;
}
.left{
text-align:left;
}
.right{
text-align:right;
}
.hierarchy1{
font-size:1.25em;
font-weight:bold;
}
.hierarchy2{
backgound-color:#ededed;
padding: 9px 10px 7px 8px;
border-top: 1px solid #ccc;
font-weight: bold;
}
.hierarchy3{
}
tr{
height:45px;
display:table-row;
}
table
{
width: 100%;
border-collapse: collapse;
}
<table>
<caption class="offScreen">Balance Sheet Table</caption>
<tbody>
<tr class="hierarchy0 bold">
<th class="left" scope="col" id="date-cell-0-1">Assets (Millions)</th>
<th class="right greyBL" scope="col" id="date-cell-1-1">9/30/2012</th>
<th class="right greyBL" scope="col" id="date-cell-2-1">9/30/2013</th>
<th class="right greyBL" scope="col" id="date-cell-3-1">9/30/2014</th>
<th class="right greyBL" scope="col" id="date-cell-4-1">9/30/2015</th>
</tr>
<tr class="hierarchy5">
<td class="left" headers="date-cell-0-1">Cash</td>
<td class="right" headers="date-cell-1-1">--</td>
<td class="right" headers="date-cell-2-1">--</td>
<td class="right" headers="date-cell-3-1">10,232.00</td>
<td class="right" headers="date-cell-4-1">--</td>
</tr>
<tr class="hierarchy4">
<td class="left" headers="date-cell-0-1">Cash Equivalents</td>
<td class="right" headers="date-cell-1-1">10,746.00</td>
<td class="right" headers="date-cell-2-1">14,259.00</td>
<td class="right" headers="date-cell-3-1">13,844.00</td>
<td class="right" headers="date-cell-4-1">21,120.00</td>
</tr>
</tbody>
<tbody>
<tr class="hierarchy0 bold">
<th class="left" scope="col" id="date-cell-0-2">Liability And Shareholder Equity (Millions)</th>
<th class="right greyBL" scope="col" id="date-cell-1-2">9/30/2012</th>
<th class="right greyBL" scope="col" id="date-cell-2-2">9/30/2013</th>
<th class="right greyBL" scope="col" id="date-cell-3-2">9/30/2014</th>
<th class="right greyBL" scope="col" id="date-cell-4-2">9/30/2015</th>
</tr>
<tr class="hierarchy5">
<td class="left" headers="date-cell-0-2">Accounts Payable</td>
<td class="right" headers="date-cell-1-2">21,175.00</td>
<td class="right" headers="date-cell-2-2">22,367.00</td>
<td class="right" headers="date-cell-3-2">30,196.00</td>
<td class="right" headers="date-cell-4-2">35,490.00</td>
</tr>
<tr class="hierarchy4">
<td class="left" headers="date-cell-0-2">Income Tax Payable</td>
<td class="right" headers="date-cell-1-2">--</td>
<td class="right" headers="date-cell-2-2">--</td>
<td class="right" headers="date-cell-3-2">--</td>
<td class="right" headers="date-cell-4-2">--</td>
</tr>
</tbody>
<tbody>
<tr class="hierarchy0 bold">
<th class="left" scope="col" id="date-cell-0-3">Supplemental (Millions)</th>
<th class="right greyBL" scope="col" id="date-cell-1-3">9/30/2012</th>
<th class="right greyBL" scope="col" id="date-cell-2-3">9/30/2013</th>
<th class="right greyBL" scope="col" id="date-cell-3-3">9/30/2014</th>
<th class="right greyBL" scope="col" id="date-cell-4-3">9/30/2015</th>
</tr>
<tr class="hierarchy1">
<td class="right" headers="date-cell-0-3">Total Capitalization</td>
<td class="right" headers="date-cell-1-3">111,210.00</td>
<td class="right" headers="date-cell-2-3">140,509.00</td>
<td class="right" headers="date-cell-3-3">140,534.00</td>
<td class="right" headers="date-cell-4-3">172,818.00</td>
</tr>
<tr class="hierarchy1">
<td class="left" headers="date-cell-0-3">Capital Lease Obligations</td>
<td class="right" headers="date-cell-1-3">--</td>
<td class="right" headers="date-cell-2-3">--</td>
<td class="right" headers="date-cell-3-3">--</td>
<td class="right" headers="date-cell-4-3">--</td>
</tr>
<tr class="hierarchy1">
<td class="left" headers="date-cell-0-3">Preferred Stock Equity</td>
<td class="right" headers="date-cell-1-3">--</td>
<td class="right" headers="date-cell-2-3">--</td>
<td class="right" headers="date-cell-3-3">--</td>
<td class="right" headers="date-cell-4-3">--</td>
</tr>
</tbody>
Если у вас есть какое-либо представление об этой структуре HTML и доступности, мы будем очень признательны.
th
, но когда вы устанавливаете атрибут заголовков, у вас есть дата**-**ячейка. Измените знак равенства на тире. (Я пытался выделить жирным шрифтом, где ошибка, но это не сработало.) - person BSMP   schedule 24.05.2016<tbody>
, так как это было для демо-версии клиента). Также обратите внимание, что здесь атрибутid
ничего не делает для NVDA. - person aardrian   schedule 24.05.2016headers
? Я бы ожидал того же, что и OP, и что он будет читать только [текст из заголовка] [текст из ячейки]. - person BSMP   schedule 24.05.2016headers
. Кроме того, посмотрите на эту матрицу поддержки чтения с экрана/браузера и посмотри, куда ты упадешь. - person aardrian   schedule 24.05.2016<th>
всегда произносится, независимо от вашего атрибута заголовков. Вам следует рассмотреть возможность удаленияheaders=
, если вы не переопределяете что-то. - person aardrian   schedule 25.05.2016