chrome中奇怪的选择器行为

时间:2011-08-10 23:23:27

标签: html css google-chrome css-selectors

请参阅jsfiddle here

选择器突出显示所有表而不是应该选择的表。它只对第一个列表项执行此操作。如果我将selected =“selected”移动到另一个列表项,我没有问题。我没有在ff中看到这个问题,即。

我做错了什么,或者这是一个新的错误?

CSS

  li[selected="selected"] table
  {
    background:yellow;
  }

HTML

<li selected="selected">
        <a href="#">
            <table>
                <tr>
                    <td>
                        Row 1 - Col 1
                    </td>
                    <td class="second">
                        Row 1 - Col 2
                    </td>
                </tr>
            </table>
        </a>
    </li>
    <li>
        <a href="#">
            <table>
                <tr>
                    <td>
                        Row 2 - Col 1
                    </td>
                    <td class="second">
                        Row 2 - Col 2
                    </td>
                </tr>
            </table>
        </a>
    </li>
    <li>
        <a href="#">
            <table>
                <tr>
                    <td>
                        Row 3 - Col 1
                    </td>
                    <td class="second">
                        Row 3 - Col 2
                    </td>
                </tr>
            </table>
    </a>
    </li>

2 个答案:

答案 0 :(得分:3)

我认为答案是selected不是<LI>标记的有效属性。 Chrome是(对或错)只是忽略了CSS中的那个元素。

如果您使用了class,那么您可以在所有浏览器中正确选择它:http://jsfiddle.net/SReUe/

答案 1 :(得分:1)

您是否尝试过让您的选择器更具体一些?

EG:li[selected="selected"] table td