如何在多列布局中占用空屏幕空间?

时间:2017-11-30 21:37:50

标签: html r layout shiny

下面的示例代码生成一个UI,其中一列中包含一些文本,另一列中包含图像。

library(shiny)
library(stringi)

ui = fluidPage(
    fluidRow(
        column(6,
               h4('Text Section'),
               p(stri_rand_lipsum(2)),
               p(stri_rand_lipsum(2))),
        column(6,
               img(src = 'http://via.placeholder.com/200x200')
    )
))

server = function(input,output){}

shinyApp(ui = ui, server = server)

根据页面的宽度,第一列可以比第二列中的图像更长或更短。以下是第一列较长的情况。

application output

问题是,是否有一个布局允许第一列的文本占据第二列中剩下的空白区域,如下图所示?

enter image description here

1 个答案:

答案 0 :(得分:1)

唯一可以做到这一点的方法是删除额外的列网格,然后将所有列网格对齐,图像右对齐。

enter image description here

library(shiny)
library(stringi)

ui = fluidPage(
  fluidRow(
    column(8,
           h4('Text Section'),
           img(src = 'http://via.placeholder.com/200x200', align = 'right'),
           p(stri_rand_lipsum(2)),

           p(stri_rand_lipsum(2)))



  ))

server = function(input,output){}

shinyApp(ui = ui, server = server)