【问题标题】:Mixing cookies and css with php将 cookie 和 css 与 php 混合
【发布时间】:2015-02-05 00:56:35
【问题描述】:

所以我有一个非常简单的 css 文件,它是基于使用 php 获取的 cookie 生成的。整个 css 也使用 php 显示,所以它

<?php header("Content-type: text/css");
$rand = $_COOKIE['randTopic'];

echo '
body {
    margin-top: 50px;
    margin-bottom: 50px;
    background: none;
}

.full {
  background: url("http://loremflickr.com/1920/1080/' . $rand . '") no-repeat center center fixed; 
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  }
';
?>

Loremflickr 只是一个从 flickr 给我随机图像的服务,我也可以选择我实际在做什么的主题。所以输出的 css 看起来就像这样:

body {
    margin-top: 50px;
    margin-bottom: 50px;
    background: none;
}

.full {
  background: url("http://loremflickr.com/1920/1080/wall
") no-repeat center center fixed; 
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  }

如您所见,有一个我并不真正想要的换行符,不知道为什么会出现在这里。我认为这可能会导致问题,你怎么看?

提前感谢您的帮助。

【问题讨论】:

  • 如果您的 cookie 中有换行符,则会导致换行符,请仔细检查以确保您没有换行符。

标签: php html css cookies


【解决方案1】:

对此的快速解决方法是对来自 cookie 的数据使用 trim() 函数。

但首先我会检查为什么会有换行符。检查您的代码。

【讨论】:

  • 修剪按预期工作,谢谢,问题已解决。情况是换行符是从不知名的地方出现的。在发布我的问题之前,我确实检查了这一点。实际的 cookie 内容是:“spinach%0A”,所以它上面有换行符,我在将它放入我的 cookie 时没有添加。真的很奇怪,我想我会坚持修剪......
【解决方案2】:

trim() 输出中的变量 -

echo '
....
background: url("http://loremflickr.com/1920/1080/' . trim($rand) . '") no-repeat center center fixed;
....
'; 

【讨论】:

猜你喜欢
  • 2015-12-23
  • 1970-01-01
  • 2014-12-06
  • 2018-01-25
  • 1970-01-01
  • 2017-06-27
  • 1970-01-01
  • 2011-12-15
  • 1970-01-01
相关资源
最近更新 更多