Checkliste beeinträchtigt Kugeln

Wenn ich eine Aufzählungsliste mit Kontrollkästchen habe, werden die Aufzählungszeichen nicht gerendert. Ich bin mir nicht sicher, ob dies ein Feature oder ein Bug ist. Es ist sicherlich etwas knifflig zu steuern.

1. [] normaler nummerierter Punkt mit Kontrollkästchen
   - normaler Punkt
    - [] Beispiel für ein Kontrollkästchen in einer Aufzählungsliste
[] Beispiel für Punkt 2 in einer Aufzählungsliste
- [] Beispiel für Punkt 3 in einer Aufzählungsliste
   - [] Beispiel für Punkt 4 in einer Aufzählungsliste
         - [] Beispiel für Punkt 5 in einer Aufzählungsliste

ergibt:

  1. normaler nummerierter Punkt mit Kontrollkästchen
    • normaler Punkt
    • Beispiel für ein Kontrollkästchen in einer Aufzählungsliste
      Beispiel für Punkt 2 in einer Aufzählungsliste
  • Beispiel für Punkt 3 in einer Aufzählungsliste
    • Beispiel für Punkt 4 in einer Aufzählungsliste
      - Beispiel für Punkt 5 in einer Aufzählungsliste
1 „Gefällt mir“

Es ist ein Feature, aber vielleicht kann es noch verfeinert werden. Ich sehe CSS für .has-checkbox, es wurde absichtlich wegen visueller Unruhe weggelassen.

6 „Gefällt mir“

Ich habe mit der richtigen Anzahl von Leerzeichen am Anfang herumgespielt.
Natürlich fehlen immer noch die Aufzählungspunkte, aber es sieht jetzt ziemlich gut aus!

1. [] normaler nummerierter Eintrag mit Kontrollkästchen A (0 Leerzeichen Präfix)
    - normaler Aufzählungspunkt A.1 (4 Leerzeichen Präfix)
      - [] Beispiel Aufzählungspunkt mit Kontrollkästchen A.1 (4 + 2 = 6 Leerzeichen Präfix)
    - normaler Aufzählungspunkt A.2 (4 Leerzeichen Präfix)
      - [] Beispiel Aufzählungspunkt mit Kontrollkästchen A.2 (4 + 2 = 6 Leerzeichen Präfix)

Hinweis: Hier wurde ein Zeilenumbruch zwischen Listen unterschiedlicher Typen hinzugefügt

- [] Beispiel Aufzählungspunkt B (0 Leerzeichen Präfix)
  - [] Beispiel Aufzählungspunkt B.1 (2 Leerzeichen Präfix)
    - [] Beispiel Aufzählungspunkt B.1.1 (2 + 2 = 4 Leerzeichen Präfix)
      - [] Beispiel Aufzählungspunkt B.1.1.1 (2 + 2 + 2 = 6 Leerzeichen Präfix)
      - [] Beispiel Aufzählungspunkt B.1.1.2 (2 + 2 + 2 = 6 Leerzeichen Präfix)
    - [] Beispiel Aufzählungspunkt B.1.2 (2 + 2 = 4 Leerzeichen Präfix)
  - [] Beispiel Aufzählungspunkt B.2 (2 Leerzeichen Präfix)
    - [] Beispiel Aufzählungspunkt B.2.1 (2 + 2 = 4 Leerzeichen Präfix)
    - [] Beispiel Aufzählungspunkt B.2.2 (2 + 2 = 4 Leerzeichen Präfix)
  1. normaler nummerierter Eintrag mit Kontrollkästchen A
    • normaler Aufzählungspunkt A.1
      • Beispiel Aufzählungspunkt mit Kontrollkästchen A.1
    • normaler Aufzählungspunkt A.2
      • Beispiel Aufzählungspunkt mit Kontrollkästchen A.2
  • Beispiel Aufzählungspunkt B
    • Beispiel Aufzählungspunkt B.1
      • Beispiel Aufzählungspunkt B.1.1
        • Beispiel Aufzählungspunkt B.1.1.1
        • Beispiel Aufzählungspunkt B.1.1.2
      • Beispiel Aufzählungspunkt B.1.2
    • Beispiel Aufzählungspunkt B.2
      • Beispiel Aufzählungspunkt B.2.1
      • Beispiel Aufzählungspunkt B.2.2
3 „Gefällt mir“

Wie bekommt man einen Spiegelstrich UND ein Kontrollkästchen? Mit Zahlen bekommt man das, aber ich möchte es mit Spiegelstrichen.

1. []
   1. []
   - []

Vorschlag

Ich hätte gerne, dass ein [] in Listen dargestellt wird als:

  1. als Ersatz für einen Spiegelstrich, wenn er ohne Spiegelstrich-Bezeichner verwendet wird
1.
   []
  1. als Spiegelstrich + ein Kontrollkästchen, wenn er mit einem Spiegelstrich-Bezeichner verwendet wird
1.
   - []

d.h. Spiegelstriche werden genauso behandelt wie Zahlen.

Wirklich hohe Einrückung?

  • Liste
    - Test
    • Test
    • Test
  • Test
- Liste
      - [] Test
    - [] Test
  - [] Test
- [] Test

Auf diese Weise wird keine Aufzählungszeichen verwendet, aber der Strich, der fast wie ein Aufzählungszeichen aussieht, bleibt zurück.

Tatsächlich, hier ist eine echte Lösung:

  • Liste
    • Element A
      • Element A.1
        • Element A.1.1
          • Element A.1.1.1
    • Element B

Jedes in diesem Beispiel sollte durch ein Nullbreiten-Leerzeichen ersetzt werden

- Liste
  - ␆[] Element A
    - ␆[] Element A.1
      - ␆[] Element A.1.1
        - ␆[] Element A.1.1.1
  - ␆[] Element B

Nullbreiten-Leerzeichen zum Kopieren für Tests:

3 „Gefällt mir“

@Firepup650 Guter Fund! Jedes Zeichen, das vor dem Kontrollkästchen hinzugefügt wird, macht die Aufzählungspunkte sichtbar.

  • Liste
    • . Punkt
      • ' Einfaches Anführungszeichen (wie in Excel Text ohne Formatierung)
        • | Pipe

Als allgemeine Lösung: Fügen Sie dieses benutzerdefinierte CSS zu Ihrer Discourse-Instanz hinzu.

ul li.has-checkbox .list-item-checkbox {
  position: relative;
  left: 0;
}

.cooked ul li.has-checkbox,
.d-editor-preview ul li.has-checkbox {
  position: relative;
  list-style-type: disc;
}

.cooked ul ul li.has-checkbox,
.d-editor-preview ul ul li.has-checkbox {
  list-style-type: circle;
}

.cooked ul ul ul li.has-checkbox,
.d-editor-preview ul ul ul li.has-checkbox {
  list-style-type: square;
}

2 „Gefällt mir“

Das ist eine Lösung und funktioniert. Aber ehrlich gesagt… es bereitet mir Kopfschmerzen, weil es starke Erinnerungen daran weckt, wie Excel Textzellen erzwingt :rofl:

Lassen Sie uns dies zu einer Funktionsanfrage machen:

Funktion: Spezielle Notation hinzufügen, um Aufzählungspunkte in Kontrollkästchenlisten beizubehalten

Wenn es derzeit eine Liste von Kontrollkästchen gibt, wird die Liste ohne Aufzählungspunkte angezeigt.

- [] Punkt 1
  - [] Punkt 2
    - [] Punkt 3
      - [] Punkt 4
  • Punkt 1
    • Punkt 2
      • Punkt 3
        • Punkt 4

Das Hinzufügen eines einzelnen Anführungszeichens (z. B. Excel Text ohne Formatierung) vor dem Kontrollkästchen deaktiviert diese Funktion bereits und Aufzählungspunkte sind sichtbar, aber zusätzlich sollte das einzelne Anführungszeichen entfernt werden.

- '[] Punkt 1
  - '[] Punkt 2
    - '[] Punkt 3
      - '[] Punkt 4
  • ' Punkt 1
    • ' Punkt 2
      • ' Punkt 3
        • ' Punkt 4

---
Dieser Markdown-Code:
--
- '[] Punkt
<!-- sollte zu HTML werden: (Hinweis: kein einzelnes Anführungszeichen sichtbar) -->
<ul>
  <li><span class="chcklst-box fa fa-square-o fa-fw"></span> Punkt</li>
</ul>

<!-- stattdessen zu diesem HTML: (Hinweis: einzelnes Anführungszeichen immer noch sichtbar) -->
<ul>
  <li>'<span class="chcklst-box fa fa-square-o fa-fw"></span> Punkt</li>
</ul>
2 „Gefällt mir“

Eine einfachere Lösung / Bereinigung hierfür könnte sein, dass ein zweites Leerzeichen (ein normales Leerzeichen, kein 0-Punkt-Leerzeichen) angibt, dass sowohl die Aufzählung als auch das Kontrollkästchen angezeigt werden sollen.

Das könnte natürlich eine ziemliche Herausforderung beim Programmieren sein!