CSS 预处理器还是 PHP?

2024-01-07

如果我用 PHP 编写代码,是否有理由使用 CSS 预处理器而不是 PHP?例如,我可以通过在标头中添加以下内容来在 CSS 文件中使用 PHP:

<link rel="stylesheet" type="text/css" media="all" href="style.php" />

这样我就可以向它传递变量,例如style.php?color=#000

或者我可以使用类似的东西LESS http://lesscss.org/预处理我的CSS。如果我使用 less.js,我不确定如何能够像前面的示例一样传递变量。

现在,我听说 PHP CSS 文件无法缓存,所以我明白为什么这会是一个问题,特别是当 CSS 文件很大时。但我希望能够将变量传递到我的 CSS 表。

有人可以告诉我更多关于为什么我要使用其中一个而不是另一个的信息,和/或如果我使用 less.js 如何将变量传递到我的 .less 文件?


现在,我听说 PHP CSS 文件无法缓存,所以我明白为什么这会是一个问题,特别是当 CSS 文件很大时。

PHP CSS 文件can被缓存,但如果将动态值传递给它们,通常会丢失缓存点。如果您有一个可能随每个请求而变化的动态值,那么缓存就变得毫无意义。

此外,通过 PHP 预处理器推送大量静态 CSS 往往会浪费服务器资源。

更简单的方法通常是使用静态 CSS 文件,并在页面主体中声明所有动态值:

<!-- the static style sheet declares all the static values --> 
<link rel="stylesheet" type="text/css" href="static.css"> 
<!-- now you override all the dynamic values -->
<style>
  .classname { color: <?php echo $color; ?> }
</style>

这样,您可以根据需要拥有动态值,但仍然可以避免 PHP 处理大量 CSS 数据。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CSS 预处理器还是 PHP? 的相关文章

  • CSS3 变换:IE 中的缩放

    我想使用CSS3属性transform scale div transform scale 0 5 0 5 有没有办法在 Internet Explorer 8 及更低版本中模仿这个 可能与filter或者 JavaScript 解决方案
  • 重新加载页面时删除哈希值?

    我使用哈希来切换我的图像滑块 当我重新加载页面并且哈希值设置为 e h 3 没有图片 当图库在几秒钟后自动滑动时 它显示下一个 所以几秒钟内什么也没有 有没有办法在加载页面时检查哈希并将其删除 我只想关心那些用散列为页面添加书签的人 问候
  • 计算帖子中使用 WordPress 短代码的次数

    我有以下 WordPress 短代码功能 function wp shortcode static i 1 return i i return return add shortcode shortcode wp shortcode 这很好用
  • 为什么我的 CSS 属性被覆盖/忽略?

    我对 CSS 层次结构 有一些问题 不确定将其称为层次结构是否正确 我正在尝试设置以下 HTML 的样式 section section
  • SQL 查询结果为字符串(或变量)

    是否可以将SQL查询结果输出到一个字符串或变量中 我的php和mysql不好 假设我有数据库 agents 其中包含列 agent id agent fname agent lname agent dept 使用此查询 sql SELECT
  • Php Curl HTTP POST REQUEST 使用嵌套键值对设置自定义标头

    如何使用 Curl 在 php 中设置此标头 CustomInfo 元素是数组 嵌套键值对 AuthenticationInfo 元素是数组 嵌套键值对
  • Bootstrap 响应式表格在 iOS 设备上无法垂直滚动

    这就是我所拥有的 div class table responsive table class table style background transparent table div 我正在使用以下 bootstrap css 文件 ht
  • Bootstrap 4 Beta 0 网格系统上的 Rowspan

    您好 我正在开发一个使用 Bootstrap 4 Beta 的电子商务模板 我让它在移动设备上工作 但在桌面设备上我不知道如何让购买按钮保持在标题下 在我的方法中 它出现在 图库 部分下 Desired Desktop Desired Mo
  • Chrome 19 无法识别字体粗细:较轻

    我刚刚启动了一个正在开发的项目以进行一些修改 并注意到该声明font weight lighter正在通过以下方式提供服务 font face并且它不再在网站上运行 参见图片 顶部镀铬 底部 ff 自昨晚以来 我的系统 Windows 上没
  • Angular SlickGrid 对齐标题文本

    我正在使用角度SlickGrid并希望将列标题中的文本居中或右对齐 并非所有列都以相同的方式 我发现 有一个headerCssClass列定义中的属性 但我一直尝试 这种样式似乎从未被应用 对于列定义 id sourceNumber nam
  • PHP cURL 看不到 /etc/hosts 文件

    我在让 PHP cURL 库识别我在我的文件中创建的别名时遇到了麻烦 etc hosts file 这就是我的 etc hosts现在归档 192 168 0 20 www example dev 在另一端 192 168 0 20 Apa
  • POSTed 数组保留其值

    今天 我注意到我的一个 WordPress 安装的行为方式非常奇怪 每当我从仪表板更新帖子时 它的一些额外输入都会保留它们已有的值 所有这些都是多维数组 例如 post php post 123 action 编辑
  • 如何下载临时文件

    我正在尝试创建一个简短的 PHP 脚本 该脚本采用 JSON 字符串 将其转换为 CSV 格式 使用fputcsv 并使该 CSV 可作为下载的 csv 文件使用 我的想法是使用tmpfile 不用担心 cronjobs 或磁盘空间不足 但
  • 即使在双引号内或使用 PHP_EOL,PHP echo 也不打印换行符

    这是一张照片剪辑 我认为它很清楚 这真让我抓狂 我似乎无法让 php 在我的本地主机 使用 xampp 或在线 PHP 解释器上打印换行符 如果你想在 php 中使用 HTML 标签 试试这个 echo dkljaks aalksja kl
  • 验证 LDAPS 连接的自签名证书

    我想从 Linux Linux 3 2 0 4 amd64 1 SMP Debian 3 2 51 1 x86 64 GNU Linux 客户端到 Windows 2012 服务器建立安全的 ldap 连接 ldaps 以更改活动中的用户密
  • 从 URL 任何文件类型创建图像

    我知道imagecreatefromgif https www php net manual en function imagecreatefromgif php imagecreatefromjpeg https www php net
  • 使用多个 WHERE 子句更新 Codeigniter 中的批次

    我查看了 CI 用户指南来了解如何处理update batch 并且它似乎只接受一个索引来匹配要更新的行 但在我的例子中 我需要指定两个索引 例如lang and id page我一起用作索引 这样的lang en id page 115是
  • 我应该创建一个块还是一个元素 BEM CSS?

    Bem官网说 创建一个块如果一段代码可以被重用并且它不依赖于正在实现的其他页面组件 创建一个元素如果一段代码在没有父实体 块 的情况下无法单独使用 我有一个 关于部分 块 它的元素依赖于父级并且不能在网站中重复使用 如何根据 bem 这段代
  • 选择子元素但不选择孙元素

    我有以下简化的代码 div p text p div div p text p div div p text p div div p text p div 每当我设置一些值时 content pCSS 文件中的元素 更改也适用于 col1
  • 通过 IP 地址限制 Laravel 错误日志

    When debug被设定为true在 Laravel 的app config php有什么方法可以限制结果Whoops包含对某些 IP 地址的堆栈跟踪的错误页面 并且不在该列表中的 IP 显示特定视图 Thanks 没有内置 但是你可能可

随机推荐

  • 如何向现有 Windows EC2 实例添加实例存储?

    我有一个 Windows 2008 EC2 实例 我已对其 EBS 启动驱动器进行了一些自定义 我将实例启动为 m1 small 或 m1 large 并且实例存储不会显示为附加驱动器 我读到 ec2 run instances 命令中的
  • 如果文本框为空,如何禁用按钮

    首先 我很抱歉我的英语不好 我是 C 初学者 我制作了一个 Windows 窗体应用程序 但如果文本框为空 我无法禁用一个按钮 我尝试了一些启用的方法 但它们不起作用 希望有人能帮我解决这个问题 非常感谢 public partial cl
  • 如何在 Jenkins 中通过 ssh-agent 直接在 Windows 上使用 git

    我正在尝试更新裸 git 存储库作为构建的一部分 在 Linux 上 它相对简单 dir my git repo git sshagent git sh git fetch origin module module 但是我不知道如何在 Wi
  • 如何向 Oracle 数据库中 CLOB 中包含的 xml 添加属性?

    如何向 Oracle 数据库中 CLOB 中包含的 xml 添加属性 我可以使用 UpdateXML 函数来更新现有属性 但它不会添加属性 您可以使用以下组合deleteXml 与任一appendChildXml insertChildXm
  • App Engine 和 Firebase 托管在一个域中

    我有一个自定义域 travelbox id 已连接到 Firebase 托管 我还有一个 App Engine 应用程序作为我的 API 我想将 App Engine 应用程序托管在api dev travelbox id 我将自定义域映射
  • 如何使母版页中内容页的默认焦点

    我有带有内容占位符的母版页 我有使用母版页的内容页 在我的所有内容页面中 我需要默认关注文本框 以便用户可以直接在文本框中键入内容 而不是将鼠标移到文本框上 在某些页面中没有文本框 因此我不会将默认焦点保留在那里 有什么方法可以在我的母版页
  • Java 字符串返回 null

    我试图让一个类从另一个类返回一个字符串 尽管我得到的返回值为空 我有一个 set 方法 可以在原始类中设置字符串 但是当在第二个类中调用该方法时 我得到 null 返回 这是第一堂课 public class IceCream instan
  • Android Kotlin 回收器视图中点击事件的新意图

    我刚刚开始学习使用 Kotlin 进行 Android 开发 我有一个列出项目的回收者视图 我正在尝试为该项目创建 onClick 事件 然后启动一个新意图并传递项目 id 尝试实例化意图 无法使用提供的参数调用以下函数 时出现错误 我认为
  • 通过在另一个模块中混合来覆盖模块混合行为

    我希望能够来回切换实例如何响应消息 我想通过混合一个模块 然后混合另一个模块来覆盖该行为来做到这一点 Example module Dog def speak puts woof woof end end module Cat def sp
  • 使用数组 C# 中的值过滤数据表

    我有一个删除方法 它获取一个 GUID 数组 并且我有一个数据表 如何过滤数据表 使其仅包含 GUID public void delete Guid guidlist datatable template ReadTemplateList
  • 无效查询参数的 HTTP 404 与 400

    这是我的请求网址 http server com app user getuser userId 9999 http server com app user getuser userId 9999 注意userId是查询参数 未嵌入路径参数
  • 如何在 NEXT JS 中的路由之间传递状态?

    我的页面中有一个对象内的数据 我想从该页面重定向到另一个页面以及数据 如下面的代码 const redirectAppointmentStep1 value gt router push pathname Appointment booki
  • 使用“new”创建对象时使用“return”

    我今天发现了一些非常奇怪的事情 如果你使用构造函数创建对象并且new关键字 但是return来自构造函数的函数 其行为如下 新创建的 对象 是一个函数 这个新函数可以像平常一样调用 但是 如果您保留对this在构造函数中 this引用从构造
  • 在流体容器中,我可以使元素的高度和宽度一样吗?

    我正在使用 container fluid 并且对于使用 span2 等在列上进行水平宽度设置非常有效 我有一个独特的要求 即我想要呈现 方形 的东西 同时仍然享受 Bootstrap 响应式宽度设置的好处 有没有一种好方法可以确保我的元素
  • FormView 绑定中的 DropDownList

    我想将下拉列表绑定到List
  • jQuery 的scrollLeft 不起作用

    我刚刚推出http elliewauters com http elliewauters com有一个我想解决的小问题 该网站使用大量动画水平滚动从一个 页面 到下一个 页面 但刷新时大多数浏览器都会记住滚动位置并返回到之前的位置 我不想要
  • 如何在 Nginx 上使用 PHP 以不同用户身份运行 shell 脚本?

    尝试使用 POST 请求触发 shell 脚本 由 nginx 处理 到目前为止还没有成功 我拥有的 exec whoami nginx nginx x 220 498 Nginx web server var lib nginx sbin
  • AWS Lambda 函数 - 将 PDF 转换为图像

    我正在开发应用程序 用户可以在其中上传一些 pdf 格式的图纸 上传的文件存储在S3上 上传后 文件必须转换为图像 为此 我创建了 lambda 函数 该函数将文件从 S3 下载到 lambda 执行环境中的 tmp 文件夹 然后从 ima
  • 设置 Excel 列标题格式以获得更好的可见性和颜色

    我浏览了很多帖子 但没有找到执行以下操作的确切方法 很抱歉附上屏幕截图 只是为了更好的可见性 我也会写它 基本上它看起来像 Name of the Man Address of Man City Jordan NC LMN 输入 csv 看
  • CSS 预处理器还是 PHP?

    如果我用 PHP 编写代码 是否有理由使用 CSS 预处理器而不是 PHP 例如 我可以通过在标头中添加以下内容来在 CSS 文件中使用 PHP 这样我就可以向它传递变量 例如style php color 000 或者我可以使用类似的东西