Estoy escribiendo un diálogo de IU de JavaScript para una aplicación web. El problema es que los usuarios pueden crear sus propios temas para la aplicación web, que pueden incluir selectores de elemento CSS (h1 {...}, div {...}
, etc.) que sobrescriben el formato de mi css para el cuadro de diálogo de la interfaz de usuario. El diálogo es un elemento div que está formateado sobre un selector de clase (la dosis id no funciona porque este diálogo puede aparecer varias veces). ¿Hay alguna forma de detener el selector de elementos del estilo de plantilla de usuario que afecta al diálogo de UI, sin tener que usar un gran estilo de restablecimiento de CSS y utilizando !important
para cada estilo del diálogo de UI? ¿De qué manera las bibliotecas de IU como la interfaz de usuario jQuery diseñan cuadros de diálogo?Sobrescribir los selectores de clase CSS sin! Important
Por ejemplo el tema de usuario incluye:
input {color:nuts; height:bananas; width:crazy; background:morenuts; }
css de la interfaz de usuario:
.ui_modal_wrap input {color:red; border:1px solid black;}
HTML de la interfaz de usuario:
<div class="ui_modal_wrap>
<input type="text" name="#" />
</div>
problema sigue siendo que tengo que usar una gran css rest for .ui_modal_wrap porque no se puede escribir css con todos los atributos que un usuario podría aplicar (en este ejemplo) el elemento de alto y ancho aún rompería el diseño porque la dosis de UI no incluye la altura y el ancho).
Por favor, muestre algunos códigos CSS, especialmente cómo se define su diálogo en este momento. –
¿No podría limitar los selectores que pueden cambiar? Por ejemplo, ¿solo les permite cambiar el color o el estilo de fuente? Si les permites abrir todos los CSS, ¿qué los detendrá simplemente arruinando todas tus marcas? lo que en esencia hará que cualquier intento que hagas para controlar ciertas partes de tu UI sea inútil ya que le han dado a todo div una posición absoluta y lo movió 30000px hacia la izquierda. – jimplode
La interfaz de usuario es una parte del CMS de uso personalizado que permite plantillas de usuario, pero la interfaz de usuario de interfaz debe tener el mismo aspecto, incluso si el diseñador de la plantilla decide hacer todo su diseño con selectores de elementos. – wowpatrick