CSS: не можете выбрать элемент в заголовке? - PullRequest
1 голос
/ 11 августа 2011

Я умру. Это происходит со мной во второй раз на этой неделе, однако я не представляю, как я это исправил в первый раз.

Я совершенно беспомощен и зол. Прежде всего, валидатор w3c говорит, что ошибок нет. Мой SASS Framework для CSS не говорит об ошибках, и у меня просто нет ошибок.

это все, что у меня есть, вся страница успешно оформлена ...

<body>

<div id="doc">

    <header>

        <div class="inner">

            <div id="branding">
                <a class="logo" href="#">Jihaa</a>
            </div>

... и вдруг ... я не могу выбрать .logo внутри #branding ARRRRGGGG.

#branding .logo {
    width: 200px;
    height: 70px;
    background: red;
}

это должно делать работу правильно, но нет.

Ни это не делает header #branding .inner .logo {, ни любая другая возможная комбинация.

Почему? Я совершенно беспомощен. Ни один инструмент проверки во всех моих браузерах не выбирает соответствующий CSS. Это просто не имеет к этому отношения!

Ответы [ 5 ]

4 голосов
/ 11 августа 2011

.logo - это a, который является встроенным элементом и не принимает width и height.

Добавьте display:inline-block; к стилю, и он должен работать.

#branding .logo {
    width: 200px;
    height: 70px;
    background: red;
    display:inline-block;
}

EDIT

По адресу @ jackJoe комментарий ниже.

Если вам нужна поддержка IE6 или 7, вы можете добавить следующее в нижней части правила:

zoom:1; 
*display: inline; 
_height: 12px;  //or whatever you need
1 голос
/ 11 августа 2011

в этом случае, если вы хотите стилизовать a с этими свойствами, вам нужно указать его отображение block

#branding .logo {
    width: 200px;
    height: 70px;
    background: red;
    display: block;
}
1 голос
/ 11 августа 2011

Я не думаю, что вы можете установить ширину или высоту для якоря, потому что это встроенный элемент.

Используйте {display: inline-block;}, о котором упоминал Джейсон Дженнаро.

0 голосов
/ 11 августа 2011

Что заставляет вас думать, что вы не можете выбрать его? Если это из-за того, что ваш рост и ширина игнорируются в вашем классе .logo, то это потому, что вам нужно отобразить: block .logo, чтобы вы уважали их.

0 голосов
/ 11 августа 2011

Убедитесь, что вы не используете те же идентификаторы в другом месте на странице.

Также попробуйте вынуть класс логотипа из тега и поместить его в div.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...