2015-12-17 178 views
6

有沒有什麼方法可以適應shinydashboard上的文字換行?默認行爲似乎是因爲它蔓延到身體區域。shinydashboard邊欄菜單溢出

我想避免修改CSS直接然而如果是涉及到修改CSS作爲服務器/ UI代碼,然後本身我打開那一部分的解決方法。

ui <- dashboardPage(
    dashboardHeader(
     title = "Sidebar spill" 

    ), 
    dashboardSidebar(
     sidebarMenu(
     menuItem(text = "sfsdf sfaosh oas fwue wi aseiu wehw wuer woeur owuer ") 
     ) 
    ), 
    dashboardBody(
     fluidRow(

    ) 
    ) 
) 

server <- function(input, output) { 

} 

shinyApp(ui, server) 
} 
+0

這聽起來像的東西,可以通過設置你的CSS來解決。就像這樣:http://www.w3schools.com/cssref/css3_pr_word-wrap.asp – Shape

+0

我試過了,還有一些其他的CSS技巧,但一直無法獲得解決方案。我管理的最好的是帶有「溢出」的滾動條。 – TheComeOnMan

+0

如果你想修改它作爲代碼的一部分,你總是可以使用'tags $ head(tags $ style(PUTCSSCODEHERE))'。如果你願意從'renderUI'返回這些標籤,你總是可以以編程方式粘貼你的css。 – Shape

回答

0

怎麼樣像這樣

... 
    dashboardSidebar(
    sidebarMenu(
     tags$div(class="header", checked=NA, 
       tags$p("sfsdf sfaosh oas fwue", tags$br(), "wi aseiu wehw wuer woeur owuer") 
    ) 
    ) 
), 
... 
+0

這將適用於這個孤立的情況。它可能不適用於不同的顯示器或不同的項目。 – TheComeOnMan

+0

也許你應該爲你的問題添加另一個例子(或者你說的不同的顯示):) – MLavoie

+0

任何時候我改變文本,我將需要重新計算'tags $ br()'的位置。這就是爲什麼它不適用於不同的物品。 – TheComeOnMan

2

文件「AdminLTE.min.css」(這個版本反正在這個版本Shinydashboard的)指定爲「白色空間:!NOWRAP重要」對於「側邊欄菜單」類以及帶有「頭部」類的「李」元素,它們是具有「邊欄菜單」類的元素的直接後代。我看到我的Shinydashboard應用程序的邊欄菜單中的「li」元素沒有「header」類,所以我忽略了「white-space:nowrap!important」(這是因爲「ul」元素包含菜單的類「邊欄菜單」)通過添加以下CSS到一個自定義的CSS文件:

.sidebar-menu > li { 
    white-space: normal; 
}