如何用echo更改html样式?

时间:2014-05-21 08:26:08

标签: php

我有这部分HTML

<li class="cat-item-16"><a href="#">Text</a></li>

如果我在这个页面上,我想知道,将链接颜色更改为绿色。

if(is_page( 112 )) :
  echo '<li class="cat-item-16" style="color: green;">';
else :
  //d
endif;

如何用echo改变li风格,是否可能?我做错了什么?

谢谢!

4 个答案:

答案 0 :(得分:2)

单行声明。如果只更改链接颜色,则只需要。

echo '<li class="cat-item-16" '.(is_page( 112 )?'style="color: green;"':'').' ><a href="#">Text</a></li>';

答案 1 :(得分:0)

尝试这一点,当页面为112时,它会给出style="color:green;"其他没有样式的html。

<?php
if(is_page( 112 )) :
  echo '<li class="cat-item-16" style="color: green;">';
else :
  echo '<li class="cat-item-16">';
endif; ?>    

<a href="#">Text</a></li>

当页面为112时,您还可以尝试使用jquery为li添加样式。

答案 2 :(得分:0)

将样式赋予锚标签()而不是li然后链接颜色将会改变。

if(is_page( 112 )) {
   echo '<a href="" style="color: green;">';
}
else {
   echo '<a href="" >'
endif;

那将有效

答案 3 :(得分:0)

在大多数浏览器中,<a>标签通常具有默认的蓝色和带下划线的样式,无论父设置的是什么,按照此小提琴:http://jsfiddle.net/z6kcm/

要解决此问题,您需要将样式应用于<a>标记,或者将<a>标记上的全局样式设置为从父元素继承。前者的一个例子是:

if(is_page( 112 )) :
  echo '<li class="cat-item-16"><a style="color: green;">Contents</a></li>';
else :
  //d
endif;

您还可以为<li>分配不同的类,然后在CSS中指定<a>标记的颜色,例如

<style>
    li.greenLi a {
        color: green;
    }
</style>

if(is_page( 112 )) :
  echo '<li class="cat-item-16 greenLi">';
else :
  //d
endif;

或者设置<a>标记以继承其父级的颜色:

<style>
    /* Use cauation...this will set it globally! */
    a {
        color: inherit;
    }
</style>

if(is_page( 112 )) :
  echo '<li class="cat-item-16" style="color: green;">';
else :
  //d
endif;