¿Es posible detectar el tamaño de fuente del navegador? ¿También es posible dedect nuevo tamaño de fuente cuando el usuario cambia el tamaño de fuente desde la selección del menú? Muchas gracias por ayudar a todos. Saludos cordiales.detectar el tamaño de fuente del navegador
Respuesta
La respuesta corta es no. Sin embargo, sospecho que desea poner diferentes tamaños en diferentes elementos dependiendo del tamaño de fuente del usuario. Si es así, puede consultar las reglas de CSS en "em", que se define como relativo al tamaño de fuente actual.
Hola Skorpan, Recibí una respuesta positiva de usted. ¿Podrías explicar tu idea? ¿Tienes un ejemplo? Gracias de nuevo. Atentamente. –
No estaba, así que no pude responder a tiempo. Sin embargo, ¡el Desarrollador de Pixel ha respondido con un ejemplo perfecto! –
Bueno, es posible, pero mi cuervo sentado en una bola de cristal me dice que no te diga cómo, sino que te pregunte qué quieres lograr. Lo más probable es que desee que una página web se vea bien sin importar el tamaño de la fuente. Por eso, recomiendo el CSS units em
, ex
etc.
+1 No tenía idea de ex. – Calvin
¿Es posible detectar el tamaño de letra del navegador?
Un poco, pero rara vez es una buena idea hacerlo. Suponiendo < body> no tiene el tamaño de fuente establecido y no hay reglas de interferencia (como ‘div cuerpo’):
var measure= document.createElement('div');
measure.style.height= '10em';
document.body.appendChild(measure);
var size= measure.offsetHeight/10;
document.body.removeChild(measure);
le da el tamaño en píxeles de 1 em.
¿También es posible dedect nuevo tamaño de fuente cuando el usuario cambia el tamaño de fuente desde la selección del menú?
No directamente, pero puede sondear la función de un medidor de la misma forma cada cierto tiempo. En IE, puedes colgar la marca de una expresión CSS(), ya que recalculan cuando se cambia el tamaño de la fuente (entre muchas otras veces), pero probablemente no valga la pena (aún necesitarías el sondeo para otros navegadores y expresión () está en desuso de todos modos).
Solo pensé en señalar que esto solo funciona cuando el elemento raíz en la página (el elemento '') tiene un 'font-size' del 100%. Si conoce el tamaño de fuente de su elemento raíz, puede calcular el tamaño de fuente del usuario poniendo 'size = size * whateverMyCssDefinesAsBaseSize/100' al final de la prueba de @ bobince. –
Por lo que yo sé, no hay una manera de averiguarlo. Simplemente asume que el tamaño predeterminado es 16 píxeles, que es el estándar.
La mejor práctica es establecer todos los tamaños de fuente en ems que se escalan según el tamaño de fuente base.
La mayoría de las personas establece la fuente base en 10 píxeles, lo que facilita el trabajo con ems.
Ejemplo
16px = 1 em
p {
font-size:2em;
}
Eso sería igual 32px
10px = 0.625em
body {
font-size:0.625em;
}
p {
font-size:2em;
}
Eso equivaldría a 20px;
Espero que haya sido de ayuda.
Mi motivación para supervisar los cambios de tamaño de texto es cambiar dinámicamente la altura (o el ancho) de los elementos para que toda la página no requiera barras de desplazamiento de la ventana del navegador. Normalmente, cuando haces esto respondes al evento de cambio de tamaño, pero los cambios en el tamaño de la fuente también pueden afectar tus cálculos.No me importa mucho el tamaño real de la fuente, solo necesito saber cuándo cambia.
Aquí hay algunos códigos jQuery que uso. Esto es similar a la solución sugerida por bobince. que tienen una función de cambio de tamaño que actualizará la altura de un div etc.
$(window).resize(resize); // update when user resizes the window.
$("body").append("<p id='textSizeReference' style='display:none;padding:0'>T</p>");
var refTextHeight = $("#textSizeReference").height();
setInterval(function() {
var h = $("#textSizeReference").height();
if (h != refTextHeight) {
refTextHeight = h;
resize(); // update when user changes text size
}
}, 500);
Si esta es una aplicación Ajax que interroga sobre cambios en location.hash se puede utilizar la misma función de votación para el cambio de tamaño de texto.
Aquí es algo que he encontrado que funciona bien para la detección de familia de la fuente actual del documento en el IE:
document.documentElement.currentStyle [ "fontFamily"]
en Firefox/Opera:
Hay es un método llamado getComputedStyle que se supone que devuelve el estilo css para un elemento determinado dado, pero no he encontrado una forma de que regrese en todo el documento todavía.
Espero que esto ayude un poco!
La forma en que lo hace volver en todo el documento es haciendo 'getComputedStyle (document.documentElement)'. Hacer 'getComputedStyle (document)' nunca funcionará porque el atributo de estilo es parte de la interfaz HTMLElement. Y, el documento no hereda propiedades de la interfaz HTMLElement: es solo un nodo, no un elemento espacial. Por lo tanto, el nodo de documento no tiene ningún estilo en sí mismo, por lo que no puede 'getComputedStyle' en él. –
necesitaba lo mismo. aquí encontré la mejor respuesta.
https://developer.mozilla.org/en-US/docs/DOM/window.getComputedStyle
- 1. Detectar actualización del navegador
- 2. ¿Cómo detectar el cierre del navegador?
- 3. Desactivar ventana del navegador Cambiar el tamaño
- 4. Tamaño del navegador (ancho y alto)
- 5. puede php detectar tamaño/resolución del monitor del navegador del cliente?
- 6. ¿Cómo puedo actualizar la pantalla en el tamaño del navegador?
- 7. ¿Puedo detectar el área visible del usuario en el navegador?
- 8. cambiar el tamaño del texto (tamaño de fuente) al cambiar el tamaño de la ventana?
- 9. Detectar dentro del navegador Android o WebView
- 10. ¿Dónde está el código fuente del navegador web de Android?
- 11. Android tamaño del botón de fuente
- 12. iOS Foundation: tamaño de fuente del sistema
- 13. tamaño del texto de la fuente
- 14. ¿Con qué frecuencia el tamaño de fuente predeterminado en el navegador no es de 16 px?
- 15. Detectar ventana del navegador Maximizado/Minimizado con Javascript
- 16. ¿Puede detectar JavaScript si el navegador del usuario admite gzip?
- 17. Detectar solicitudes AJAX en el navegador (lado del cliente)
- 18. ¿Cómo detectar el foco del navegador en dispositivos móviles?
- 19. Detectar la versión exacta del sistema operativo desde el navegador
- 20. ¿Cómo detectar si el soporte del navegador es flash?
- 21. ¿Cómo detectar el navegador cerca del servidor en asp.net?
- 22. ¿Determina el tamaño original de la imagen del navegador cruzado?
- 23. ¿Puedo cambiar el tamaño de la ventana del navegador?
- 24. Javascript establece el tamaño de la ventana del navegador
- 25. CSS 100% de ancho en el tamaño del navegador
- 26. Reposicionamiento de jQuery UI Autocompletar en el tamaño del navegador
- 27. ¿Cómo cambiar el tamaño de fuente del gráfico de Google?
- 28. cambiar dinámicamente el tamaño div en función del tamaño de la ventana del navegador
- 29. Método de navegador cruzado para detectar el scrollTop de la ventana del navegador
- 30. ¿Cómo obtener el código fuente del navegador Google Chrome?
[jQuery Plugin que puede ayudar] (http://stackoverflow.com/questions/10463518/converting-em-to-px-in-javascript-and-getting-default-font-size/ 16924637 # 16924637) – SpYk3HH