你好我很新的样式光泽与css和有一种方法来改变选择输入光泽
fluidRow(
tags$head(
tags$style(
"
.brand-picker button.btn.dropdown-toggle.btn-default {
background-color: #eaeaea;
color: black;
font-weight: bold;
transition: transform 0.2s ease-in-out;
}
.brand-picker button.btn.dropdown-toggle.btn-default.collapsed {
transform: rotate(180deg);
}
"
)
),
column(4, tags$div(
shinyWidgets::pickerInput(
inputId = "brand", "Brand",
choices = unique(df1$Brand),
selected = "Kanzler",
options = list(`actions-box` = TRUE),
multiple = T),
class = "brand-picker"
)),)
我尝试了这段代码,但什么也没发生,我只是想箭头动画和其余的只是设置为默认像正常的选择输入
我的预期结果是箭头动画是从下向上移动时,我们点击选择输入
1条答案
按热度按时间gblwokeq1#
你的问题中没有足够的代码来真正回答你的具体问题。我的猜测是,你需要包括JavaScript而不仅仅是CSS来让动画正常工作。也有可能CSS针对的是错误的选择器。
可能有一个R包已经实现了你想要的下拉菜单类型,但是我会以不同的方式回答这个问题,通过展示你可以直接在一个shiny应用程序中包含原始HTML,CSS和JavaScript,所以你可以制作一个直接使用你的示例代码的shiny应用程序。
示例链接:codepen.io/zoomodesign/pen/yNbVVZ
以下是如何通过 * 直接使用他们的原始代码*来重新制作您在评论中链接到的示例。我不建议在生产环境中这样做,但它可以帮助您了解并找出您想要为他们的项目提供的代码片段。
第0步:如果您使用的是rstudio,请创建一个shiny应用程序作为项目
你可以通过创建一个新项目,然后选择shiny app作为项目类型来实现这一点。这实际上不是必需的,但可能会使事情变得更容易。
第一步:在应用程序目录中创建
www/
文件夹您可以使用此
dir.create("www")
执行此操作第二步:创建三个空白文件
如果您使用的是RStudio,您可以直接创建HTML、CSS和Javascript文件,方法是单击新建文件,然后选择正确的文件类型。在本示例中,使用以下名称保存文件:
css_from_your_example.css
将此文件保存在应用程序的www/
文件夹中。确保文件扩展名为.css
js_from_your_example.js
将此文件保存在应用程序的www/
文件夹中。确保文件扩展名为.css
1..
html_from_your_example.html
将此文件保存在应用程序的主目录中。如果您为应用程序创建了项目,则此目录也应该是工作目录第三步:复制和粘贴HTML、CSS和Javascript
将HTML复制到
.html
文件中,将CSS复制到.css
文件中,将JavaScript复制到.js
文件中。第四步:包括HTML、CSS和JavaScript到你的闪亮的UI
有很多方法可以做到这一点,这里有一些参考:
下面是shiny的R代码:
下面是shiny的样子
第五步根据需要修改
这是一个如何在一个闪亮的应用程序中使用HTML,CSS和Javascript的例子。直接复制并不是一个很好的长期策略,因为这是陈词滥调,但也因为你最终需要修改一些东西来满足你的规范。这里有一些关于如何从你的例子中找到你想要的项目的JS和CSS片段的想法:
你可以使用浏览器中的开发者工具找到css选择器,右键点击“inspect”或“developer tools”,然后左键点击“inspect”或“developer tools”。
在开发者工具中,你可以直接修改css并在运行时运行javascript。Shiny有时会有意想不到的类名和额外的容器,所以开发者工具对于找到正确的选择器非常有用。你使用开发者工具所做的任何CSS更改都可以直接复制并粘贴回你正在为你的shiny应用使用的css文件。
找到所需的选择器后,可以使用
Document.querySelector('CSS SELECTOR GOES HERE')
或其他类似的方法在javascript中定位它们。以下是有关开发人员工具的详细信息:https://torquemag.io/2020/06/browser-developer-tools-tutorial/