Знатокам CSS. Задачка

Рубрика: Дневник -> CSS и HTML
Понедельник, 18 сентября 2006 г.
Просмотров: 2965
Подписаться на комментарии по RSS
]]>
]]>

Вот задачка, которую я так и не смог решить. Если кто-то ткнет носом в ошибку, буду очень признателен.

Итак, у нас есть простая html-страничка. В ней необходимо сделать так, чтобы все ссылки, при наведении курсора, оказывались в рамочке (зеленой). Но при этом, все изображения, заключенные в ссылки, оказывались в другой рамке (синей).

Вот html-код:

  1.  <html><head><title>Тест</title>
  2.  <style>
  3.  img {border: none;}
  4.  a, a:visited {text-decoration: none;}
  5.  a:hover {border: 3px green solid;}
  6.  a:hover img {border: 3px blue solid;}
  7.  </style>
  8.  </head><body>
  9.  <a href="#">ссылка</a>
  10.  <br /><br /><br />
  11.  <a href="#"><img width="100" height="100" src=""></a>
  12.  </body></html>

Казалось бы всё должно работать как надо, однако при наведении курсора получается такая картина (FireFox):

Наведение курсора

То есть отображаются две рамки...

Внимание, вопрос: "Каким образом убрать с картинки зеленую рамку от ссылки?".

]]>twitter.com Google Buzz google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru]]>

Комментариев: 7

Вы можете получать новые комментарии к этой записи по RSS или оформить подписку на все комментарии сайта. Или даже на все новые записи сайта. (Не знаете, как это сделать?)
  1. 2006-09-18 в 16:14:17 | wklim
    Тест
    img {border: none;}
    a, a:visited {text-decoration: none;}
    a:hover {border: 3px green solid;}
    a:hover img {border: 3px blue solid;}
    ссылка
  2. 2006-09-18 в 16:16:34 | wklim

    е-мое, а код где? smile

    style="border: 0px" надо добавить в тег "а" для картинки

  3. 2006-09-18 в 16:18:13 | wklim

    И что это за черепашка в моих сообщениях?

  4. 2006-09-18 в 19:35:38 | Максим

    Ну добавить стиль к ссылке прямо в тексте, это понятно. Тут даже нет вопросов. Сейчас я пользуюсь примерно также: в таких ссылках просто указываю отдельный класс, в котором и указываю особое оформление. А вот как сделать это автоматом?

    ps Черепашка - это аватарка, которая показывается, если пользователь не имеет своего аккаунта на http://gravatar.com/ smile

  5. 2006-09-20 в 02:19:03 | saahov

    Либо загонять картинку в div (или другой блоковый тег), либо тегу a задать класс. Примерно так:

    1 вариант с дивом:

    Тест
    img {border: none;}
    a, a:visited {text-decoration: none;}
    a:hover {border: 3px green solid;}
    a:hover img {border: 3px blue solid;}
    .no-a-border a {border: 0px;}
    ссылка

    2 вариант с классом:

    Тест
    img {border: none;}
    a, a:visited {text-decoration: none;}
    a:hover {border: 3px green solid;}
    a:hover img {border: 3px blue solid;}
    a.no-a-border {border: 0px;}
    ссылка
  6. 2007-12-07 в 06:40:21 | Антон

    Как уже написал saahov, кроме как использовать отдельный класс или блок поверх изображения (собственно разницы нет) выхода нет, т.к. в этом случае вам надо что бы изображение дейстовало на отображение ссылки, но если задуматься, то как можно ссылку запихать в тег <img.../>, короче ни как нельзя средствами css ссылке объяснить, то, что если в ней стоит изображение надо отображаться по другому, а еще короче схема типа img a {...} - работать не будет - нет никакой логики (в html такое не реализовать)!

    P.S. извините, если ошибаюсь, но помоему я все-таки прав!

  7. 2010-06-08 в 22:02:35 | vasya pupkin
    a{border:solid 3px #fff;float:left}
    img{border:solid 3px #fff;vertical-align:middle;}
    a:hover{border:solid 3px red}
    a:hover img{border:solid 3px green}
    

Оставьте комментарий!

Не регистрировать/аноним

Используйте нормальные имена. Ваш комментарий будет опубликован после проверки. Если вы зарегистрированы в Твиттере, то перед логином укажите «@», например: @maxsite

Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email.
(При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д.)



grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question

(обязательно)