При отсутствии кода вообще в вашем вопросе, ответ очень трудно. Я попытаюсь ответить. Существует два способа добавления пользовательских CSS
в htmlwidget
. Я буду предостерегать перед тем, как вы будете должен быть очень конкретным или использовать !important
переопределить, так как уже существует довольно bit of CSS
, который автоматически добавляется к leaflet
.
Легкий, но менее Robust
htmlwidgets
можно комбинировать с tags
из htmltools
пакета.
library(leaflet)
library(htmltools)
# example from ?leaflet
m = leaflet() %>% addTiles()
# there are two approaches to the custom css problem
# 1. the easy but less robust way
browsable(
tagList(list(
tags$head(
# you'll need to be very specific
tags$style("p{font-size:200%;}")
# could also use url
#tags$link(href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css",rel="stylesheet")
),
m
))
)
Более Robust с htmlDependency
Вы также можете использовать htmlDependency
, который будет обрабатывать конфликты, вызванные дублей.
# 2. you can add dependencies to your leaflet map
# this mechanism will smartly handle duplicates
# but carries a little more overhead
str(m$dependencies) # should be null to start
#
m$dependencies <- list(
htmlDependency(
name = "font-awesome"
,version = "4.3.0"
# if local file use file instead of href below
# with an absolute path
,src = c(href="http://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css")
,stylesheet = "font-awesome.min.css"
)
)
m
У вас есть только немного воспроизводимого кода или пример пользовательского стиля лифлета? Я думаю, что у меня есть ответ, но я не знаю. 'htmltools' определенно будет вашим другом здесь, но есть и другие возможности, которые мы можем исследовать с помощью зависимостей. – timelyportfolio
также вы используете в 'rmarkdown' или нет? – timelyportfolio
нет, я не использую rmarkdown. Я хотел бы использовать его на отдельном веб-сайте. – kbrunner