fromholdio / silverstripe-csshelpers
该包已弃用,不再维护。没有建议替代包。
提供CSS钩子,可添加到模板的BODY元素中,由用户状态和当前页面元信息生成。
1.0.0
2019-02-18 07:10 UTC
Requires
- php: >=5.6
- silverstripe/framework: ^4.0
- silverstripe/vendor-plugin: ^1.0
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钩子定位是一种丑陋且可怕的错误。
但有时这正是你面前工作的正确工具。