Jerarquia de operaciones ejemplos resueltos
Contenido
selector de clase
Estoy estilizando una tabla que tiene celdas con marcas de verificación (no interactivas). Los iconos de las marcas de verificación se añaden mediante CSS. Como no hay contenido accesible en ella, le he añadido una etiqueta aria. Ahora me pregunto si es una buena idea utilizar este atributo como un selector CSS para añadir los iconos de las marcas de verificación de esta manera:
Aprendí que usar atributos ARIA como selectores es generalmente una buena práctica, al menos para atributos relacionados con el estado como aria-hidden, aria-expanded, etc. En este caso tenía sentido tener el estilo td acoplado a la etiqueta correspondiente. Pero, por supuesto, si esas etiquetas cambian en algún momento tendré que adaptar el CSS también.
En este caso estás confiando en el CSS para añadir contenido a una página basada en ARIA que no creo que necesites. En primer lugar, el soporte para aria-label (en <td>s así como en otros elementos) puede ser inestable en combos de navegadores / lectores de pantalla más antiguos, y en segundo lugar, el soporte para el contenido generado por CSS por combos de navegadores / lectores de pantalla más antiguos puede ser más inestable. Sin embargo, no sé nada de tus usuarios para saber si esto es importante.
selector de id.
PD: Si el evento onclick del span ocurriera antes que el evento onblur del elemento de entrada mi problema estaría resuelto, porque podría establecer algún valor de estado que indicara que se ha hecho clic en un elemento concreto.
PPS: El trasfondo de este problema es que quiero disparar un control autocompletador AJAX de forma externa (desde un elemento clicable) para que muestre sus sugerencias, sin que éstas desaparezcan inmediatamente por el evento blur del elemento input. Así que quiero comprobar en la función blur si se ha hecho clic en un elemento específico, y si es así, ignorar el evento blur.
Hmm… En Firefox, puedes usar explicitOriginalTarget para sacar el elemento sobre el que se ha hecho clic. Esperaba que toElement hiciera lo mismo para IE, pero no parece funcionar… Sin embargo, puede extraer el elemento recién enfocado del documento:
Advertencia: Esta técnica no funciona para los cambios de enfoque causados por el tabulador a través de los campos con el teclado, y no funciona en absoluto en Chrome o Safari. El gran problema con el uso de activeElement (excepto en IE) es que no se actualiza consistentemente hasta después de que el evento de desenfoque haya sido procesado, ¡y puede no tener ningún valor válido durante el procesamiento! Esto puede ser mitigado con una variación de la técnica que Michiel terminó usando:
cómo acceder a los elementos dom sombra
Nota: Los grupos de pestañas no se sincronizan en esta versión. En macOS Big Sur, esta versión requiere habilitar la opción GPU Process: Media en el menú Desarrollo para solucionar problemas con los servicios de streaming.
La versión 126 de Safari Technology Preview ya está disponible para su descarga para macOS Big Sur y las betas de macOS Monterey. Si ya tienes instalado Safari Technology Preview, puedes actualizarlo en el panel de Actualización de Software de las Preferencias del Sistema en macOS.
La versión 109 de Safari Technology Preview ya está disponible para su descarga para macOS Catalina. Con esta versión, Safari Technology Preview ya está disponible para las betas de macOS Big Sur. Si ya tienes instalado Safari Technology Preview, puedes actualizarlo en el panel de Actualización de Software de las Preferencias del Sistema en macOS. Actualmente, Safari Technology Preview sólo está disponible para los Mac basados en Intel.
Notificaciones de violación de contraseñas. En macOS Big Sur, Safari notificará a los usuarios cuando una de sus contraseñas guardadas en el llavero de iCloud haya aparecido en una violación de datos; la solicitud de cambio de contraseña utiliza la conocida URL para el cambio de contraseñas (https://example.com/.well-known/change-password), lo que permite a los sitios web especificar la página que debe abrirse para actualizar una contraseña.
estilizar la sombra del dom desde el exterior
TodoMVC compara y contrasta las implementaciones de aplicaciones de todo de los frameworks populares de MV*, incluyendo Vue.js, Angular.js y Ember.js. Como desarrollador que investiga la tecnología para un nuevo proyecto, le permite encontrar la opción más intuitiva y ergonómica para sus necesidades.
El diseño inclusivo de una interfaz de lista de tareas es, sin embargo, agnóstico al framework. A tu usuario no le importa si está hecho con Backbone o React; sólo necesita que el producto final sea accesible y fácil de usar. Desgraciadamente, cada una de las implementaciones idénticas en TodoMVC tiene algunos defectos. La más notable es que la funcionalidad de borrar sólo aparece al pasar el ratón por encima, lo que la convierte en una característica totalmente inaccesible por teclado.
En este artículo, construiré un componente de lista de tareas integrado desde cero. Pero lo que se aprende no tiene por qué aplicarse sólo a las listas de tareas – realmente estamos explorando cómo hacer que la creación básica y la eliminación de contenido sean inclusivas.
Una gran parte de la usabilidad tiene que ver con las etiquetas. El elemento <label> proporciona etiquetas a los campos de formulario, por supuesto. Pero los nodos de texto simples que se proporcionan a los botones y enlaces también son etiquetas: te dicen lo que hacen esos elementos cuando los pulsas.