2016-11-10 79 views
2

我建立一个闪亮的应用程序,其中将有三个选项卡(TAB1,TAB2,TAB3和)一个tabsetPanel。我将有两个动作按钮,将适用于所有的标签,但我不希望在标签内的动作按钮,我希望他们是在标签的最右侧,所以现在问题你在哪个标签,你总是可以看到动作按钮。下面是我所谈论的一些代码:如何放置按钮闪亮

tabsetPanel(

     tabPanel(
      title = "Tab1" 
     ) 

     tabPanel(
      title = "Tab2" 
     ) 

     tabPanel(
      title = "Tab3" 
     ) 
) 

所以,我想这两个动作按钮,最右边的选项卡,但tabsetPanel之外。

actionButton('load_inputs', 'Load inputs') 
actionButton('save_inputs', 'Save inputs') 

如果有一种方法可以仅仅是actionButton()函数中指定您希望将按钮显示这将是很好。

回答

1

您可以使用CSS定义的任何元素的位置。您可以通过添加属性样式来为每个按钮添加样式:actionButton(style= "...")。你也可以用你的自定义样式创建一个.css文件。但是对于这种情况,您可以将样式设置为按钮所在的div

下面是在tabsetPanel的右上角添加两个按钮的基本示例。

library(shiny) 

ui <- fluidPage(
    titlePanel("Tabsets"), 
    div(style = "position:absolute;right:1em;", 
    actionButton('load_inputs', 'Load inputs'), 
    actionButton('save_inputs', 'Save inputs') 
), 
    tabsetPanel(
    tabPanel("Tab1", h2("Content 1")), 
    tabPanel("Tab2", h2("Content 2")), 
    tabPanel("Tab3", h2("Content 3")) 
) 
) 

server <- function(input, output, session) { 
} 
runApp(list(ui = ui, server = server)) 
+0

正是我所需要的。非常感谢! – RustyStatistician