【问题标题】:Random Background Image PHP随机背景图像 PHP
【发布时间】:2015-11-01 13:16:15
【问题描述】:

我使用下面的 PHP 代码在每次刷新页面时显示随机标题图像。这工作正常,但我需要为某些图像添加特定的背景位置 css 属性。

例如 headerimage3.jpg 需要一个 background-position:20px 并且 headerimage1.jpg 需要一个 background-position:50px。

这可以使用下面的 PHP 代码还是需要使用 javascript?

<style type="text/css">
#header-image{background:url("/files/headerimage<?php echo rand(1,4)?>.jpg");background-position:center center;background-size:cover}}
</style>

【问题讨论】:

    标签: php css


    【解决方案1】:

    添加 php 头文件:

    <?php
        $rnd = rand (1,4);
        $pos = ($rnd == 1) ? "50px 0;" : ($rnd == 3) ? "20px 0;" : "top left";
    ?>
    

    然后在css中:

    <style type="text/css">
    #header-image
    {
        background-image: url("/files/headerimage<?php echo $rnd ?>.jpg");
        background-position: <?php echo $pos ?>;
        background-size: cover;
    }
    </style>
    

    【讨论】:

    • 是否可以为每个图像分配类,以便可以在样式表中而不是在 php 标头中设置背景位置?
    • 您可以使用 php 为 html 元素添加类名,例如。 &lt;div id="header-image" class="&lt;?php echo image$rnd ?&gt;",然后您可以为每个类指定单独的规则。
    【解决方案2】:

    所以一种方法是传递一个变量并检查它以分配新数据:

    <?php 
    $rand=rand(1,4);
    if ($rand==1){$back="50px";}
    elseif ($rand==3){$back="20px";}
    else{$back="center";}
    ?>
    <style type="text/css">
    #header-image{background:url("/files/headerimage<?php echo $rand; ?>.jpg");background-position:<?php echo $back;?> center;background-size:cover}}
    </style
    

    【讨论】:

      猜你喜欢
      • 2012-02-08
      • 1970-01-01
      • 2010-11-27
      • 1970-01-01
      • 2023-04-02
      • 2014-10-12
      • 2013-01-14
      • 2013-06-21
      • 1970-01-01
      相关资源
      最近更新 更多