2013-06-08 28 views
5

Tôi có một tiêu đề như thế này:Trình đọc màn hình: Làm thế nào để tạo một từ với các thẻ xung quanh các chữ cái của nó được nói dưới dạng một từ duy nhất, chứ không phải là một chuỗi các chữ cái?

<h1>This is a t<span>e</span>st.</h1>

Các thẻ xung quanh chữ "e" nguyên nhân Mac OS X Voiceover để đọc các chữ cái riêng lẻ của từ riêng biệt, chứ không phải là toàn bộ từ. Vì vậy, nó nói:

"Đây là một bước".

Thay vì:

"Đây là một thử nghiệm."

Cho rằng tôi cần kèm theo một chữ cái của một từ trong thẻ *, làm cách nào để đảm bảo rằng trình đọc màn hình nói từ như bình thường?

  • N.B: mọi thẻ sẽ thực hiện. Tôi đã thử <b>, <i><em> và tất cả đều tạo ra cùng một hiệu ứng.
+0

Điều đó nghe giống như một lỗi nghiêm trọng trong OS X Voiceover.Không thể nghĩ ra bất kỳ giải pháp nào khác ngoài việc cung cấp trang web thân thiện với trình đọc màn hình đặc biệt với nội dung được chỉnh sửa/cô đặc đặc biệt. –

+0

Có một số thuộc tính HTML có thể ảnh hưởng đến cách hoạt động của Voiceover, xem ví dụ: http://alxgbsn.co.uk/2011/06/06/making-web-content-more-accessible-with-ios-voiceover/ có thể giúp đỡ có thể được tìm thấy theo hướng đó. –

+0

Chúng tôi cũng đang tham gia chương trình này. Sucks. – nouveau

Trả lời

0

Đây không phải là giải pháp nhưng có thể là giải pháp hữu ích nếu tình huống của bạn cho phép bạn.

Tôi cảm thấy bạn muốn quấn một chữ cái để hiển thị khác, thay vào đó bạn có thể hiển thị từ "kiểm tra" làm hình ảnh bằng cách làm như vậy bạn có thể tạo nó theo bất kỳ cách nào bạn muốn và đặt từ "test" làm thuộc tính alt trong hình ảnh

<h1>This is a <span id="specialWord" ><img src = "testImage.jpg" alt = "test"></span>. </h1> 

Vì vậy, nếu như giọng nói OS X đó sẽ đọc chính xác. Bởi vì nếu tôi nhớ chính xác nó đọc thuộc tính alt của một hình ảnh.

Bây giờ, trong trường hợp đó, sự cố có thể phát sinh. Bất kỳ ai muốn chọn nó như một văn bản thì nó sẽ không thể. Bạn có thể giải quyết điều đó bằng cách gọi một hàm javascript để tự động thay đổi html bên trong của thẻ span (với id = "specialWord") thành "test" từ img.

Hy vọng bạn có thể hưởng lợi từ điều đó.

+0

Thật không may điều này cho biết thêm nhiều vấn đề hơn giải quyết. Văn bản được nhúng trong một hình ảnh khó duy trì, có vẻ xấu trên màn hình võng mạc và không hoạt động để bản địa hóa. –

1

Một cách để làm việc xung quanh không minh bạch này là bằng cách cung cấp một phiên bản màn hình đọc-chỉ-của văn bản cùng với miếng ngon đó là ném ra khỏi trình đọc màn hình, chẳng hạn như:

đoạn CSS:

.offscreen 
{ 
    position: absolute; 
    clip: rect(1px 1px 1px 1px); /* for Internet Explorer */ 
    clip: rect(1px, 1px, 1px, 1px); 
    padding: 0; 
    border: 0; 
    height: 1px; 
    width: 1px; 
    overflow: hidden; 
} 

Markup dụ:

<h1>This is a 
    <span aria-hidden="true">t<strong>e</strong>st</span> 
    <span class="offscreen">test</span>. 
</h1> 

ở đó, các thuộc tính aria-hidden ẩn miếng ngon phiền hà từ trình đọc màn hình (<span aria-hidden="true">t<strong>e</strong>st</span>) và offscreen class trực quan ẩn phiên bản trình đọc màn hình của văn bản (<span class="offscreen">test</span>).

Kết quả cuối cùng là người dùng trình đọc màn hình sẽ nghe thấy “Đây là một bài kiểm tra” và người dùng được nhìn thấy sẽ thấy “Đây là bài kiểm tra” trong trang.

Các vấn đề liên quan