内联 CSS for :hover 声明在 clojurescript 中没有渲染
Inline CSS for :hover states no rendering in clojurescript
我确定我犯了一个简单而愚蠢的错误,所以请宽恕。
我正在尝试为某些 clojurescript 元素编写内联 CSS,并且可以编译以下代码,但不会呈现预期的悬停颜色。
有没有人看出哪里出了问题?
[:div
[bp/icon
{:icon "database"
:style {:color "#555555" :padding "10px" :background-color "rgb(250, 250, 250)" :hover "rgb(255, 63, 0)"
}}]]
编辑:
我也试过这种方法,同样没有成功:
[:div {:class "bp3-button-group"}
[:div [bp/icon {:icon "database" :style {:color "#555555" :padding "10px" :background-color "rgb(250, 250, 250)" :&:hover {:background-color "#000"}
}}]
]]
```
像:hover
这样的伪class不能通过内联样式应用。它们只能应用于 CSS 选择器本身,但由于您没有使用命名的 class,因此您也不能应用伪 classes。
典型的 CSS-in-JS 库生成了 "virtual" class 名称,而不是将实际样式应用于元素,只需应用 class 名称和在运行时创建匹配的 CSS 选择器。
您要么必须使用手动创建的样式创建外部 CSS
// some.css
.some-class { ... }
.some-class:hover { ... }
// your.cljs
[:bp/icon {:icon "database" :class "some-class} ...]
使用一些在运行时为您执行此操作的库(例如 garden
)或通过为 onmouseenter
[=14= 附加自定义 JS 事件处理程序来模仿相同的 "hover" 行为] 并在运行时操纵实际样式。
内联样式在它们可以实现的方面相当有限(例如,也没有媒体查询)所以你想在大多数情况下坚持使用实际的 CSS。直接或通过在运行时生成它的 JS。
确实在内联 CSS 中不支持伪 类:CSS Pseudo-classes with inline styles
您可以让 garden
生成一个单独的 CSS 文件,利用伪 类、媒体查询等的全部功能
或者,您可以寻找受 JS 趋势 CSS 启发的支持您需求的 clojurescript 库,例如 Herb:http://herb.roosta.sh/#pseudo
我确定我犯了一个简单而愚蠢的错误,所以请宽恕。
我正在尝试为某些 clojurescript 元素编写内联 CSS,并且可以编译以下代码,但不会呈现预期的悬停颜色。
有没有人看出哪里出了问题?
[:div
[bp/icon
{:icon "database"
:style {:color "#555555" :padding "10px" :background-color "rgb(250, 250, 250)" :hover "rgb(255, 63, 0)"
}}]]
编辑:
我也试过这种方法,同样没有成功:
[:div {:class "bp3-button-group"}
[:div [bp/icon {:icon "database" :style {:color "#555555" :padding "10px" :background-color "rgb(250, 250, 250)" :&:hover {:background-color "#000"}
}}]
]]
```
像:hover
这样的伪class不能通过内联样式应用。它们只能应用于 CSS 选择器本身,但由于您没有使用命名的 class,因此您也不能应用伪 classes。
典型的 CSS-in-JS 库生成了 "virtual" class 名称,而不是将实际样式应用于元素,只需应用 class 名称和在运行时创建匹配的 CSS 选择器。
您要么必须使用手动创建的样式创建外部 CSS
// some.css
.some-class { ... }
.some-class:hover { ... }
// your.cljs
[:bp/icon {:icon "database" :class "some-class} ...]
使用一些在运行时为您执行此操作的库(例如 garden
)或通过为 onmouseenter
[=14= 附加自定义 JS 事件处理程序来模仿相同的 "hover" 行为] 并在运行时操纵实际样式。
内联样式在它们可以实现的方面相当有限(例如,也没有媒体查询)所以你想在大多数情况下坚持使用实际的 CSS。直接或通过在运行时生成它的 JS。
确实在内联 CSS 中不支持伪 类:CSS Pseudo-classes with inline styles
您可以让 garden
生成一个单独的 CSS 文件,利用伪 类、媒体查询等的全部功能
或者,您可以寻找受 JS 趋势 CSS 启发的支持您需求的 clojurescript 库,例如 Herb:http://herb.roosta.sh/#pseudo