Después de guardar el contenido de la publicación, se renderiza durante aproximadamente 4 ms en la publicación renderizada, antes de que aparezca un círculo de carga durante 2 ms, y desaparece:
Soluciones
Si su renderizado en el previsualizador es accidental, y su eliminación de la publicación renderizada es deliberada debido a preocupaciones de seguridad que desconozco, ¿no podría al menos reemplazar \u003cbutton\u003e con \u003cbutton disabled\u003e?
Pregunto porque veo un uso frecuente de \u003ccode\u003e y \u003ckbd\u003e donde \u003cbutton\u003e sería semántico, especialmente en tutoriales y pasos de reproducción.
No estoy seguro de si es un error en sí. Entiendo tu confusión.
Para evitar que las etiquetas y atributos/nombres de clase HTML sean filtrados, esto debe permitirse explícitamente en el núcleo de Discourse o en un plugin.
Por ejemplo, una lista predeterminada se puede encontrar aquí:
También es posible permitir una etiqueta solo para la vista previa. Por ejemplo, los controles de imagen tienen varias combinaciones de etiquetas/nombres de clase/atributos.
Ves el botón en la vista previa porque es un efecto secundario de la etiqueta que se permite aquí.
Sin embargo, el atributo disabled se ignora porque no está definido.
No comprobé cómo se analiza la lista de permitidos, me pregunto si es el comportamiento esperado. . Actualmente, parece que la etiqueta se permite independientemente de los atributos. Habría esperado que el botón no se renderizara si no se usa exactamente, por ejemplo, <button class="alt-text-edit-ok btn btn-primary">.
Puedes crear un plugin para permitir <button> en la publicación después de renderizar. Hazme saber si necesitas ayuda.
@Arkshine, estoy agradecido. Sin embargo, no soy un operador de instancia. Simplemente he notado esto al formular contenido.
Este es uno de los muchos casos en los que las representaciones HTML5 y CSS3 en el previsualizador difieren de la renderización final, lo que significa que escribir contenido para Discourse puede ser difícil. Esto es especialmente cierto cuando las ediciones se han deshabilitado o limitado a un período de tiempo muy corto, en toda la instancia.
Desafortunadamente, no puedes hacer configuraciones en esta situación, así que si quieres añadir otra etiqueta, tendrás que bifurcar mi repositorio y añadirla tú mismo aquí.
@Arkshine, ¿no se puede incluir eso en la versión principal? Pregunto porque esto afecta a todas las instancias que utilizo, y pedirles a todas que incorporen un parche para algo tan trivial para ellas probablemente sería inviable.
Normalmente, crearía un problema para algo como esto en el repositorio de GitHub correspondiente, pero la sección de problemas está deshabilitada para Discourse.
@Jagster, si esta etiqueta simplemente no estuviera disponible, lo haría. Sin embargo, que el previsualizador no funcione como previsualizador es un Bug.
¿Cómo clasificarías esto como una característica? ¿Cómo reescribirías el título para demostrarlo?
Creo que la inconsistencia entre las vistas previas y las publicaciones renderizadas es razonable considerarla un Bug.
La solución probablemente será bloquearla también en la vista previa, lo que significa que “agregar soporte para <button> a las publicaciones” sería una Feature request válida en el futuro