Hello! I’m writing my application in QML, and inside a TextArea formatted with RichText I want to display this:
a header
(an empty line)
another header
my first thought was to go with a <br>
tag, but it has a problem: it creates 2 empty lines, don’t know why. so doing this
<h1>hello</h1>
<br>
<h2>world</h2>
produces
hello
(an empty line)
(an empty line)world
I tried using the <pre>
tag:
<pre>
</pre>
but no empty lines were displayed
the only working workaround was to use a non breaking space , but being it a TextArea, the user is able to edit the text, and so there would be a “rogue” space instead of an empty line. How can I display just a single line break between two headers (or even paragraphs, but in my case the header is needed)?
Just a guess, but have you tried <p></p>
?
Or a single p
tag with or without a slash after the p? (Lemmy keeps mangling this one when I write it explicitly.)
If I write some text inside the tags yes, a single line is created, but with the text. I want a blank line, and unfortunately empty tags are apparently stripped out by the textarea
What about a non-breaking space?
Edit: I just realized you addressed that in the post.
replying to @ono@lemmy.ca as the direct reply loops forever:
thanks for the answer! I already tried an empty paragraph <p></p>
but it gets stripped out by the textarea as soon as I assign it to the text
property: if I print the text right after it has been modified, the empty paragraph is gone. the same goes for `` or <[/]p>
The mismatch between rich text and html has been a pain for pretty much ever.
Have you tried putting the br on the line above instead of on its own? Barring that can you assign a css class and just create the vertical separation you want?
Have you tried placing the <br>
tag directly after the `` closing tag?
Does Qt Quick expose Qt’s markdown support? That could be another way to populate a rich text control, perhaps letting you work around the problem.