我有一个 CakePHP 网络应用程序,页面顶部有以下代码:
<section class="content">
<style>.center {text-align: center;}</style>
<!-- Small boxes (Stat box) -->
<div class="row normaluserdash">
<?php
$colors = array('', 'green','aqua','purple','orange');
foreach( $user->accounts as $account ) {
?>
<div class="normaluserdash col-xl-3 col-md-4 col-sm-6 col-12">
<!-- Card -->
<div class="card text-white bg-info">
<!-- Card Header -->
<h4 class="card-header text-white"><?=$account->title?></h4>
<!-- /card header -->
<!-- Card Body -->
<div class="card-body">
<!-- Card Title-->
<h2 class="card-title text-white center"><?=$this->Format->currency($account->balance)?></h2>
<!-- Card Title-->
</div>
<!-- /card body -->
<!-- Card Footer -->
<!-- /card footer -->
</div>
<!-- /card -->
</div>
<?php } ?>
</div>
上面的代码为用户显示了 4 个账户余额的账户余额,因为上面的代码重复了 4 次。现在,上述所有 4 个块的颜色都是蓝色的。我想做一些东西,我为每个颜色呼应不同的颜色并将其输入 CSS 类。然后,我可以制作一个包含所有 4 种颜色的 CSS 样式表。我希望颜色与所有 4 个块不同,但我希望它们在刷新后保持不变。在有人建议之前,用 JS 随机生成是行不通的。
提前感谢您提供的任何帮助。如果您想知道,该网站是https://bank.northwatchbank.com,您可以注册查看。长话短说,这是一个骗子的假银行。
编辑修复:
<?php
function getCalorBykey($key, $colors){
$colors_count = count($colors);
// get reminder
$reminder = ($key)%$colors_count;
return $colors[$reminder];
}
$colors = array('info','warning','danger','success');
foreach( $user->accounts as $key => $account ) {
?>
<div class="normaluserdash col-xl-3 col-md-4 col-sm-6 col-12">
<!-- Card -->
<div class="card text-white bg-info card-<?= getCalorBykey($key, $colors) ?>">
<!-- Card Header -->
<h4 class="card-header text-white"><?=$account->title?></h4>
<!-- /card header -->
<!-- Card Body -->
<div class="card-body">
<!-- Card Title-->
<h2 class="card-title text-white center"><?=$this->Format->currency($account->balance)?></h2>
<!-- Card Title-->
</div>
<!-- /card body -->
<!-- Card Footer -->
<!-- /card footer -->
</div>
<!-- /card -->
</div>
<?php } ?>
</div>
感谢 Jasco 的帮助,我只需要对您的代码进行少量修改即可使其与我的主题一起使用!