【问题标题】:Change a PHP coded background colour to CSS将 PHP 代码背景颜色更改为 CSS
【发布时间】:2014-10-19 23:06:01
【问题描述】:

这是对我之前的问题 HERE 的跟进。

我正在寻找帮助的下一段代码如下。

我希望从下面的代码中获取#FFFFFF,并将其设置为外部 CSS 文件的颜色,目前 PHP 中的代码如下

'COLOUR' => (empty($row['cat_colour'])) ? '#FFFFFF' : $row['cat_colour'],

我希望使用的 CSS 是

/* index page category background colour */
.cat_colour {
background-color: #c0c0c0c0;
}

如何转换

'COLOUR' => (empty($row['cat_colour'])) ? '#FFFFFF' : $row['cat_colour'],

使用

    /* index page category background colour */
.cat_colour {
background-color: #c0c0c0c0;
}

来自我的外部样式表

代码

'COLOUR' => (empty($row['cat_colour'])) ? '#FFFFFF' : $row['cat_colour'], 

是唯一使文本背景变为白色的代码,没有其他代码参与其中。

完整的 PHP 代码如下。

// prepare categories list for templates/template
// Prepare categories sorting
if ($system->SETTINGS['catsorting'] == 'alpha')
{
$catsorting = ' ORDER BY cat_name ASC';
}
else
{
$catsorting = ' ORDER BY sub_counter DESC';
}

$query = "SELECT cat_id FROM " . $DBPrefix . "categories WHERE parent_id = -1";
$res = mysql_query($query);
$system->check_mysql($res, $query, __LINE__, __FILE__);

$query = "SELECT * FROM " . $DBPrefix . "categories
WHERE parent_id = " . mysql_result($res, 0) . "
" . $catsorting . "
LIMIT " . $system->SETTINGS['catstoshow'];
$res = mysql_query($query);
$system->check_mysql($res, $query, __LINE__, __FILE__);

while ($row = mysql_fetch_assoc($res))
{
$template->assign_block_vars('cat_list', array(
'CATAUCNUM' => ($row['sub_counter'] != 0) ? '(' . $row['sub_counter'] . ')' : '',
'ID' => $row['cat_id'],
'IMAGE' => (!empty($row['cat_image'])) ? '<img src="' . $row['cat_image'] . '" border=0>' : '',
'COLOUR' => (empty($row['cat_colour'])) ? '#FFFFFF' : $row['cat_colour'],
'NAME' => $category_names[$row['cat_id']]
));
}

当前在模板中的输出如下

<!-- BEGIN cat_list -->
<li>
<span style="{cat_list.COLOUR}">
<a href="browse.php?id={cat_list.ID}">{cat_list.IMAGE}{cat_list.NAME}</a>     {cat_list.CATAUCNUM}
</span>
</li>
<!-- END cat_list -->

非常感谢任何帮助,但请以完全 PHP 新手可以理解的方式解释它。

我已经尝试重新编码我在上一个线程中使用的原始代码以在此代码中使用,甚至尝试通过剖析原始代码和先前线程的代码来制作我自己的代码,但似乎无法得到它上班。

【问题讨论】:

  • $row['cat_colour'] 存储在哪里?
  • @Gudip 这不是我认为这就是为什么它是一个空的 $row 我检查了每个文件的 $row['cat_colour'] 并且唯一提到它的是我正在使用索引的文件中。 php,上面发布的代码
  • 将代码中的 #FFFFFF 更改为 #c0c0c0c0
  • @Gudip 我希望它查看 CSS 的颜色,在上面的代码中将 index.php 中的 #FFFFFF 更改为 #C0C0C0 不是查看外部 CSS style.css 而是只是将 PHP 更改为显示灰色而不是白色。我希望它可以从 CSS 中编辑,而不是直接在 PHP 中
  • 你为什么用php来做这个?只需在 html 中链接 css 样式表并给它一个类。这不是应用样式的方式。

标签: php css class


【解决方案1】:

您需要做的就是创建一个 CSS 文件并在 index.php 的头部引用它,如下所示: &lt;link rel="stylesheet" type="text/css" href="PATH/TO/YOUR/CSSFILE.css" /&gt;

删除 PHP 中的 COLOR 行。你不再需要它了。

然后,将需要更改颜色的任何 HTML 元素指定为“cat_colour”类(如:&lt;li class="cat_colour"&gt; ... &lt;/li&gt;,如果您希望 li 更改颜色),并将您的 css 代码粘贴到您的 css 文件中。

【讨论】:

  • 这是关于更改 PHP 代码,而不是关于如何制作 CSS 文件然后链接到它我已经知道所有这些。感谢您的回答,但请在回答之前正确阅读帖子
  • 你应该正确地提出你的问题。您显然不知道该模板/CMS 背后的内容。
猜你喜欢
  • 2014-10-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-04
  • 1970-01-01
  • 2020-04-03
  • 2011-07-28
  • 2019-06-20
相关资源
最近更新 更多