PageKit: el creador de sitios GrapesJS autoalojado, con el código fuente incluido. Obtener acceso anticipado

Issue #404✓ ResueltoAbierto el 11 de octubre de 2017por thecodefishReacciones 9

Cambiar las propiedades de CSS en un componente con una clase existente modifica esa clase en lugar de añadir una nueva

Respuesta rápidapor thecodefish❤ 5

Pensaba que el comportamiento podría ser algo así: Configuración por defecto (configuración actual):Si el elemento no tiene clases, crear una clase única basada en cid y aplicar estilosSi el elemento tiene clases, aplicar estilos a la unión de esas clases (o a las clases seleccionadas en la interfaz) Comportamiento al...

Lee la respuesta completa abajo ↓

Pregunta

Puedes ver esto en acción en la demo (http://grapesjs.com/demo.html). Selecciona uno de los elementos de navegación (por ejemplo, 'Web'); ten en cuenta que ya existe una clase de 'elemento de menú'. Si ahora cambias algunas propiedades, como la alineación del texto, se aplican esos cambios a la clase de elemento del menú, que afecta a las otras instancias ('Plantilla', 'Constructor'). ¿Es posible forzar a GrapesJS a aplicar una nueva clase 'única' y aplicar los cambios allí, similar a cómo funciona si haces cambios en un componente sin clases existentes (por ejemplo, 'c1234')? En última insta...

Respuestas (3)

👍 Muy útilthecodefish• 11 de octubre de 2017

Pensaba que el comportamiento podría ser algo así: Configuración por defecto (configuración actual):Si el elemento no tiene clases, crear una clase única basada en cid y aplicar estilosSi el elemento tiene clases, aplicar estilos a la unión de esas clases (o a las clases seleccionadas en la interfa...

artf• 17 de noviembre de 2017

Hola @thecodefish ¿qué opinas de este enfoque? https://codepen.io/artf/pen/jaaKvq Allí verás cómo hacer que los selectores sean privados (no estilizables por el usuario) y el uso de la nueva opción 'avoidInlineStyle', que permite estilizar componentes (no selectores de clase) sin perder la respuest...

artf• 11 de octubre de 2017

Diría que tienes dos opciones:

  1. Simplemente desactiva la clase, en este caso, el ámbito del gestor de estilos cambiará al componente y no a la regla
  2. Añade una nueva clase al componente, en lugar de la regla '.menu-item' obtendrás '.menu-item.tu-nuevo-clase'

Preguntas y respuestas relacionadas

Continúa investigando con debates sobre temas similares.

Plugins de pago que cumplen con este problema

Seleccionado por temas clave y relevancia de etiquetas para ayudarte a enviar más rápido.

Ver todos los plugins

Cargando recomendaciones de plugins de pago...

Opción gratuita

Consulta los plugins de código abierto de GrapesJS en GitHub O haz una búsqueda rápida en nuestro catálogo gratuito.

Explora plugins gratuitos →
Opción premium

Los plugins premium incluyen soporte, actualizaciones regulares y funciones listas para producción — ahorrando días de trabajo de integración.

Explora plugins premium →

Explorar categorías de plugins

Ve directamente a las páginas de categorías de plugins en el marketplace.