Der "button"-HTML5-Tag wird im Editor-Previewer angezeigt, aber nicht in den veröffentlichten Beiträgen

Problem

Nach dem Speichern des Inhalts des Beitrags wird dieser für ungefähr 4 ms im gerenderten Beitrag angezeigt, bevor ein Ladekreis für 2 ms erscheint und verschwindet:

Lösungen

Wenn das Rendern in der Vorschau versehentlich erfolgt und das Entfernen aus dem gerenderten Beitrag bewusst aufgrund von Sicherheitsbedenken geschieht, die mir nicht bekannt sind, könnten Sie dann nicht zumindest \u003cbutton\u003e durch \u003cbutton disabled\u003e ersetzen?

Ich frage, weil ich häufigen Missbrauch von \u003ccode\u003e und \u003ckbd\u003e sehe, wo \u003cbutton\u003e semantisch wäre, insbesondere in Tutorials und Reproduktionsschritten.

1 „Gefällt mir“

Ich bin mir nicht sicher, ob es ein Bug per se ist. Ich verstehe Ihre Verwirrung.

Um zu verhindern, dass HTML-Tags und Attribute/Klassennamen herausgefiltert werden, muss dies in Discourse Core oder einem Plugin explizit erlaubt werden.

Eine Standardliste finden Sie beispielsweise hier:

Es ist auch möglich, einen Tag nur für die Vorschau zuzulassen. Beispielsweise verfügen die Bildsteuerelemente über mehrere Kombinationen von Tags/Klassennamen/Attributen.

Sie sehen den Button in der Vorschau, da dies eine Nebenwirkung des hier erlaubten Tags ist.
Das disabled-Attribut wird jedoch ignoriert, da es nicht definiert ist.

Ich habe nicht geprüft, wie die erlaubte Liste geparst wird; ich frage mich, ob es das erwartete Verhalten ist. :thinking:. Derzeit scheint der Tag unabhängig von den Attributen erlaubt zu sein. Ich hätte erwartet, dass der Button nicht gerendert wird, wenn Sie nicht genau z. B. <button class="alt-text-edit-ok btn btn-primary"> verwenden.

Sie können ein Plugin erstellen, um <button> nach dem Rendern zuzulassen. Lassen Sie mich wissen, wenn Sie Hilfe benötigen.

2 „Gefällt mir“

@Arkshine, ich bin dankbar. Ich bin jedoch kein Instanzbetreiber. Mir ist das lediglich aufgefallen, als ich Inhalte formuliert habe.

Dies ist eines von vielen Beispielen, bei denen die HTML5- und CSS3-Darstellungen in der Vorschau vom endgültigen Rendering abweichen, was das Verfassen von Inhalten für Discourse schwierig machen kann. Dies gilt insbesondere dann, wenn Bearbeitungen deaktiviert oder auf einen sehr kurzen Zeitraum instanzweit beschränkt wurden.

1 „Gefällt mir“

Ich verstehe; das ergibt Sinn! Ich stimme zu, dass das keine gute Erfahrung ist.

Wenn du möchtest, habe ich dieses kleine Plugin erstellt, um \u003cbutton\u003e mit dem disabled-Attribut zu erlauben: GitHub - Arkshine/discourse-markdown-allowlist

Leider kannst du in dieser Situation keine Einstellungen vornehmen. Wenn du also ein weiteres Tag hinzufügen möchtest, musst du mein Repository forken und es selbst hier hinzufügen.

2 „Gefällt mir“

@Arkshine, kann das nicht nach oben gestreamt werden? Ich frage, weil dies jede Instanz betrifft, die ich verwende, und alle von ihnen zu bitten, einen Patch für etwas so Triviales für sie zu übernehmen, wäre wahrscheinlich nicht machbar.

Normalerweise würde ich für so etwas ein Problem im entsprechenden GitHub-Repository erstellen, aber der Issue-Bereich ist für Discourse deaktiviert.

Verwenden Sie hier Feature anstelle von GitHub? Denn Bug ist das hier nicht.

@Jagster, wenn dieses Tag nur nicht verfügbar wäre, würde ich es tun. Allerdings ist der Fehler, dass der Previewer nicht als Previewer funktioniert, ein Bug.

Wie würdest du das als eine Funktion klassifizieren – wie würdest du den Titel umschreiben, um das zu verdeutlichen?

1 „Gefällt mir“

Feature ist eine Kategorie für fehlende Funktionen. Bug ist für Fehler, und das ist kein Fehler.

Vielleicht möchten Sie es genau so verwenden, wie Sie einen Issue-Bereich in GitHub verwenden würden?

1 „Gefällt mir“

Ich halte die Inkonsistenz zwischen Vorschau und gerenderten Beiträgen für einen Bug, der berücksichtigt werden sollte.
Die Lösung wird wahrscheinlich darin bestehen, dies auch in der Vorschau zu blockieren, was bedeutet, dass „die Unterstützung von <button> für Beiträge“ in Zukunft eine gültige #feature-Anfrage wäre :wink:

3 „Gefällt mir“

In der Tat, @david. Ich hätte diese trennen sollen:

Entschuldigung und danke.

3 „Gefällt mir“