fromholdio/silverstripe-csshelpers

该包已弃用,不再维护。没有建议替代包。

提供CSS钩子,可添加到模板的BODY元素中,由用户状态和当前页面元信息生成。

安装: 764

依赖者: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

公开问题: 0

类型:silverstripe-vendormodule

1.0.0 2019-02-18 07:10 UTC

This package is auto-updated.

Last update: 2023-06-18 18:14:13 UTC


README

SiteTree应用扩展,提供基于用户状态(登录/注销等)和当前页面元信息(类、类层次、URL段/路由)的CSS钩子。

作为向<body>元素添加有时有用的CSS钩子的廉价且简单的方法。

向模板提供两个变量

  • $BodyCSSClass
  • $BodyCSSID

顺便说一下,生成的类基于我自己的BEM混合的过时版本...所以,就是这样。我肯定会在某个时候将它们标准化,或者允许它们在某个阶段通过静态配置(某种方式)设置。

需求

SilverStripe 4

安装

composer require fromholdio/silverstripe-csshelpers

详细信息

$BodyCSSID使用前缀page-和当前页面的完整URL段生成(即它还包括父页面的路由层次/URL段)。

Sample $BodyCSSID: "page-blog-article-name"

$BodyCSSClass使用以下方式生成

  • Body被添加为返回字符串的初始部分
  • 遍历页面的父级,为每个添加Body--<urlsegment>(允许针对特定区域进行CSS定位)
  • 遍历页面的类层次,为每个添加class-<classname>,直到class-page
  • 添加当前控制器操作:action-<actionname>
  • 添加登录状态:logged-[in|out]
Sample $BodyCSSClass: "Body Body--blog Body--blog--article-name class-blogpost class-page action-index logged-out"

免责声明

是的。有时这种基于用户可以在CMS中随意更新的URL段(通过你的错误或他们的错误 😉)的CSS钩子定位是一种丑陋且可怕的错误。

但有时这正是你面前工作的正确工具。