我正在使用Mac(10.8.5)和Safari [6.2.4]。我創建了一個字段,用於對我的輸入進行分組,併爲其添加圖例文本。我也應用了css來隱藏UI中的圖例 - 但是圖例和標籤在DOM中可用。蘋果電話語音與fieldset圖例問題的可訪問性
Windows/IE上的NVDA可以正常工作。它讀取字段集圖例並讀取輸入的標籤。
但是在上面的Mac/Safari組合中,Apple Voice over並未讀取圖例。是否有任何與Mac/Safari版本有關?
<fieldset >
<legend class="screen-read-only">Please sign in to this application</legend>
<div >
<div >
<label for="USER" class="screen-read-only">Enter your email or username here to test screen reader in MAC</label>
<input class="no-inline-checker ng-pristine ng-invalid ng-invalid-required ng-touched" tabindex="0" type="text" id="USER" name="USER" placeholder="Username or Email Address" data-ng-model="email" required="" data-autocorrect="off" data-autocapitalize="off" data-test-id="myr-signIn-emailAddress" aria-required="true" aria-invalid="true">
<span class="inline-checker icon-error sign-in ng-hide" data-ng-show="submitted && form.USER.$error.required" aria-hidden="true"></span>
</div>
</div>
<div class="row overrite-margin">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"><div class="myr-remember-me row"><span data-test-id="myr-singin-rememberMe" class="myr-checkbox col-xs-1" tabindex="0"><input data-ng-model="rememberMe" type="checkbox" name="rememberMe" id="rememberMe" class="myr-checkbox-input ng-pristine ng-untouched ng-valid" tabindex="0" aria-checked="false" aria-invalid="false"> <label for="rememberMe" class="myr-checkbox-box"><span class="screen-read-only">Remember me checkbox</span></label></span>
<span translate="_remember_me">Remember Me</span></div></div>
</div>
</fieldset>
你能提供的示例代碼?也許CodePen或JSFiddle?我知道這個問題與iOS/VoiceOver,但不是macOS/VoiceOver。 – aardrian
@aardrian更新了代碼片段。應用於標籤上的CSS就是將標籤從正常用戶的視線中隱藏起來。 –
您的意思是將其隱藏於* sighted *用戶,而不是普通用戶。另外,請記住,三分之一的屏幕閱讀器用戶不會流光溢彩。什麼是你使用的CSS?關閉屏幕?修剪?顯示屬性? – aardrian