私は、センテンス中にリンクを含むダイナミックに生成されたHTMLを使ってShinyアプリケーションを構築しています。残念ながら、私がこれを行うために関数tags
を使用すると、すべての要素には、私が望むかどうかにかかわらず、その周りにスペースがあります。私が書きたかった場合例えば段落内のリンクをシャープにネストすると不要な空白が入ります
は、
これが私のfavorite link everです!
一つは、あなたがこの
p('This is my ', a(href = 'https://stackoverflow.com/', 'favorite link ever'), '!')
を行うことができると思うかもしれません。しかし、これはHTMLの仕様によってそれぞれの間にレンダリングされたスペースがあることを意味し、別の行、上にある各要素になります。 (感嘆符の前にスペースを注意してください)
これは私favorite link everでこのようになります
<p> This is my <a href="https://stackoverflow.com/">favorite link ever</a> ! </p>
!
HTML(paste0(...))
を使用して自分のHTMLを構築する必要がありますか?または、私が紛失している機能を使用する方法がありますか?
ありがとう。
1. HTMLビルダーを使用しているShiny開発者が、結果として得られるHTMLがすべて1行にある場合、なぜ気にするのですか?私たち全員が気にかけるように、全体のアウトプットを縮小することができます。 2.改行を保っていても、子供たちを別々の場所に置くことができない理由は何も見当たりませんし、そうでない人もいます。例えば、「div」は「p」はありません。私はこれが特に複雑で驚くべきものだとは思わない。 3.動的に生成されたコンテンツを使用する場合、ヘルパー関数は明示的なHTMLを貼り付けるよりもはるかに洗練された見た目のコードを実際に生成します。これらの関数は、理由のために存在します。 –
ところで、現時点で実際の回答がないので、私は本当にこれを機能要求にしてください。この問題の原因は、htmltoolsパッケージの上流にあると思います。https://github.com/rstudio/htmltools/blob/02678ee19192f406d1aa5c360916f54df09802a1/R/tags.R#L429 –
私はこれを問題として書いています: https://github.com/rstudio/htmltools/issues/92 –