Alineación de imágenes y cuadrícula

:information_source: Resumen Agrega botones de cuadrícula de imágenes y alineación a la barra de herramientas del compositor
:hammer_and_wrench: Repositorio https://github.com/Lillinator/image-alignment
:question: Guía de instalación Cómo instalar un tema o componente de tema
:open_book: ¿Nuevo en Temas de Discourse? Guía para principiantes sobre el uso de Temas de Discourse

Instalar este componente de tema

Este componente de tema inserta botones en la barra de herramientas del compositor de publicaciones para alinear imágenes cargadas a la izquierda o derecha del texto, en el centro de la publicación, o para alinear varias imágenes en una cuadrícula, utilizando las etiquetas de cuadrícula implementadas recientemente. La cuadrícula dimensionará automáticamente las imágenes para que encajen según la cantidad y las dimensiones de cada una, y también enlazará a las versiones cargadas más grandes. Los botones / funciones de alineación se pueden usar varias veces en una publicación para crear una variedad de diseños. Funciona tanto para vistas de escritorio como móviles. :slight_smile:
Para usarlo, simplemente haga clic en el botón de alineación de imagen que necesite, luego cargue las imágenes en el lugar designado entre las etiquetas resultantes (marcadas con texto de marcador de posición que se puede editar en la configuración del componente).
Tenga en cuenta que la parte de cuadrícula de este componente es para alinear imágenes cargadas, no enlaces de imágenes (las otras opciones de alineación funcionarán para imágenes enlazadas). Tomé prestado parte del marco de código básico del útil componente MD Composer Extras de @Steven.
Pendiente: agregar selectores de iconos adecuados para cada botón.


Capturas de pantalla

botón de cuadrícula de la barra de herramientas del compositor (con ejemplo de código de cuadrícula)

ejemplo de cuadrícula de imágenes

botón de alineación a la derecha de la barra de herramientas del compositor (con ejemplo de código de alineación a la derecha)

imagen alineada a la derecha del texto

botón de alineación a la izquierda de la barra de herramientas del compositor (con ejemplo de código de alineación a la izquierda)

imagen alineada a la izquierda del texto

botón de alineación central de la barra de herramientas del compositor (con ejemplo de código de alineación central)

imagen alineada al centro (con texto)

27 Me gusta

Se acaba de añadir un botón para centrar imágenes.

4 Me gusta

¡Gran herramienta! ¿Puedes mostrar cómo se ve en el editor?

3 Me gusta

¡gracias @piffy! :slight_smile:

¿te refieres al compositor / editor con la barra de herramientas? esa sería la primera captura de pantalla con el ejemplo de la cuadrícula. añadiré algunas capturas de pantalla del editor con los otros códigos de alineación alrededor de las imágenes.

3 Me gusta

Gracias por esta solución para Image Alignment

3 Me gusta

¡Componente impresionante! ¡Justo iba a hacer este tipo de pregunta!
¡Eres una estrella del rock creando complementos valiosos!

2 Me gusta

Muchas gracias Dan, aprecio el cumplido y me alegra que los encuentres útiles :slight_smile:

2 Me gusta

De nada. ¿Cómo haces para que “Alinear a la izquierda”, por ejemplo, muestre texto en negrita en tu captura de pantalla? Intenté con Markdown y muestra el código de Markdown.

Veo que funciona con ### pero el negrita estándar con

**Texto**

no parece funcionar.

No estoy seguro de entender a qué te refieres @Heliosurge?

3 Me gusta

Mis disculpas, cuando lo intenté antes no funcionó. No estoy seguro de qué cambió. Esto es bastante impresionante, gracias.

2 Me gusta

De acuerdo, si estás usando más de 1 imagen, estoy recibiendo esto.

De este código. ¿Cómo hago que la información sea persistente en cada imagen? La información de Shawn debería estar al lado de la segunda imagen.

¿Cómo puedo arreglarlo?

2 Me gusta

solo inserta algunas etiquetas HTML <br><br> entre el primer bloque de texto y la etiqueta <div>-data-theme... hasta que se espacie correctamente. Intentaré programar un retorno forzado o algo así cuando tenga tiempo.

2 Me gusta

Genial, así que agrega un número de
hasta que el texto se alinee con la imagen apropiada

¡Gracias de nuevo por tu ayuda y por el increíble Theme component!

3 Me gusta

Creo que este no es un método confiable ya que la altura del contenido diferirá del tamaño de una ventana a otra.

Limpiar los flotantes cuando hay contenido arbitrario al lado es complicado. No estoy seguro de que haya una solución obvia aquí…[1]

También fue un problema con el editor de Wordpress durante mucho tiempo.

La gente tiende a depender de métodos hacky que utilizan elementos cuyo único propósito es tener un clear: both; para restablecer los flotantes anteriores.


  1. hasta que aparezca don :upside_down_face: ↩︎

2 Me gusta

Sí, a mí tampoco me gusta ese método. Estaba pensando en intentar una solución de propiedad de espacio en blanco. :thinking: al final, funciona mejor si las imágenes alineadas son publicaciones separadas. Desafortunadamente, las imágenes en las tablas tampoco funcionan muy bien.


  1. hasta que aparezca don :upside_down_face: ↩︎

Quizás puedas explorar otras soluciones además de float.

Intenté cambiar float por flex:thinking: Sin entrar en detalles.

[data-theme-image=left] {
    display: flex;
    float: none;
}

[data-theme-image=right] {
    display: flex;
    float: none;
    justify-content: flex-end;
}

[data-theme-image=left] {
    display: flex;
    float: none;
}

[data-theme-image=right] {
    display: flex;
    float: none;
    flex-direction: row-reverse;
}

¿O quizás mirar el diseño de cuadrícula (grid layout)? Aunque no sé nada sobre él. Mi conocimiento de CSS tiene años. :older_adult:

jaja la opción de cuadrícula es parte de este componente temático :grin:

Yo también creo definitivamente que el mío es más antiguo :exploding_head:.

¿qué son esas? ¿galletas? No puedo decir si son patatas o albóndigas o algún tipo de galleta. :sweat_smile:

2 Me gusta

Hice daifuku mochi ayer, relleno de anko casero.

2 Me gusta

Probé esas soluciones de propiedad flex align pero no pude encontrar algo que funcionara de manera consistente. Sin embargo, encontré una solución alternativa utilizable. Si haces que cada sección de imagen-texto sea una cita en bloque, las separa (pero incluye el formato de cita para el texto):

editor / previsualizador:

resultado:

3 Me gusta

Esto se debe a que <blockquote> contiene un clear: both; en Discourse.

3 Me gusta