>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Разработка http://forum.mozilla-russia.org/viewforum.php?id=18 >Для тех у кого проблемы с CSS выражениями в firefox 2.0 http://forum.mozilla-russia.org/viewtopic.php?id=13604 |
dimsi > 07-11-2006 11:27:31 |
В firefox 2.0 (возможно и в версиях >=1.0.7) выражения с тэгом A (#element A DIV {...} #element A.active DIV {...}) работают не корректно. Фокса не ругать, у Unix'оидов другого бровсера нет, а админы обязательно должны на Unix'е сидеть. |
Lynn > 07-11-2006 11:30:48 |
dimsi |
dimsi > 07-11-2006 11:49:19 |
К тому что fox'e 2.0 стал криво работать со стилями, то что работало в moziila1.0-Fox1.0.6, Opera6.0-9.0, IE4-IE7 работать перестало. |
Dark-Demon > 07-11-2006 12:04:14 |
dimsi, RTFM. никакого DIV внутри A быть не может. если бы ты верстал правильно, таких проблем бы небыло. вот такие вот чудеса иногда случаются, когда DIV суёшь внутрь A: http://dark-demon.nm.ru/web/samples/moz_margin_bug.htm |
Lynn > 07-11-2006 12:09:46 |
dimsi пишет
А это что? http://dev.lynn.ru/_/a-div.xhtml Выделить код Код:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru"> <head> <title></title> <style type="text/css"> a { color: red; } a div { color: blue; background: violet; } </style> </head> <body> <a href="#"> red <div>blue</div> red </a> </body> </html> |
dimsi > 07-11-2006 12:24:40 |
Это из той же Oper'ы, что все страницы должны быть квадратные и каждому бровсеру свой стиль <смерть модемам - даеш страницы в 500K!>. |
Dark-Demon > 07-11-2006 12:37:31 |
Lynn, http://validator.w3.org/check?uri=http%3A%2F%2Fdev.lynn.ru%2F_%2Fa-div.xhtml dimsi, все страницы должны быть валидные. |
Lynn > 07-11-2006 12:46:22 |
Dark-Demon |
dimsi > 07-11-2006 13:05:14 |
Валидаторы не авторитет, они придуманны недавно, а страницы сделанны давно, завтра запретят растягивающиеся страницы TD width=4000 и в замен ничего. Политика "мы свой мы новый мир построим" ничего хорошего netscape не принесла (впомним LAYER и кардинальный отказ от него + последующий отказ WebMaster'ов что либо писать под перевертыша-netscape), ту то IE и вышел в люди, потому что политики не менял. |
Dark-Demon > 07-11-2006 13:21:44 |
Lynn, и в чём состоит опровержение? в том, что в одном конкретном случае это будет отображено правильно? вынужден тебя огорчить - браузеры еле справляются с отображением валидных вещей, а уж инвалидные они совсем вразнобой показывают. так что когда ты начнёшь дополнять стилями, где-нибудь из-за этого у тебя может поехать, и потом долго будешь искать причину... dimsi, валидаторы, как и спецификации придуманы очень давно. впрочем совать DIV внутрь А никогда было нельзя, и применение такой техники является хаком, работоспособность которых никто не гарантирует. |
Lynn > 07-11-2006 15:26:42 |
Dark-Demon
А я и не утверждаю, что всё будет хорошо. Я опровергаю утверждение о том, что „вложенные в A не inline элементы в стилях теперь не обрабатываются“. Во-вторых, CSS, вообще говоря, никак не привязан к HTML, поэтому валидность HTML с точки зрения DTD здесь вообще не играет никакой роли. С помощь CSS можно оформить абстрактный XML-документ, в котором можно вкладывать div в a… |
Dark-Demon > 07-11-2006 15:46:17 |
ой, сории-сори-сори |
Unghost > 08-11-2006 01:07:30 |
==> Разработка |
dimsi > 09-11-2006 19:02:51 |
Я опять встряну, пример то забыл привести. <ul class=myLink type=square> ----- Вылечил методом: В чем неправ? |
Dark-Demon > 09-11-2006 19:14:52 |
опять ты вставляешь блочный элемент в строчный.
а для A задай display:block и растяни её на весь LI |
dimsi > 09-11-2006 19:28:49 |
Так кубики LI не подсвечиваются, или я непонял? |
Dark-Demon > 09-11-2006 19:56:26 |
dimsi, подсвечивай не LI а А. |
dimsi > 10-11-2006 08:34:27 |
Не понял. Код в студию. |
ragnaar > 10-11-2006 11:10:47 |
Если уж на то пошло, то мне кажется что должно выглядеть так Выделить код Код:<html> <head> <style> .myLink A { text-decoration: none } .myLink A:link, .myLink LI:link { color: #000000 } .myLink A:active, .myLink LI:active { color: #824EE1 } .myLink A:visited, .myLink LI:visited { color: #000000 } .myLink A:hover, .myLink LI:hover { color: red } </style> </head> <body> <ul class="myLink" type="square"> <li><a href=./text1>link text</a></li> <li><a href=./text2>link text2</a></li> </ul> </body> </html> В данном примере подсвечиваются и буллеты и код - правильный. |
Al_H > 10-11-2006 13:14:44 |
ragnaar Выделить код Код:<html> <head> <title> ... </title> <style type="text/css"> <!-- .myLink a {text-decoration: none;} .myLink a:link {color: #000000;} .myLink a:active {color: #824EE1;} .myLink a:visited {color: #000000;} .myLink a:hover, .myLink li:hover, .myLink li:hover a {color: red;} --> </style> </head> <body> <ul class="myLink" type="square"> <li><a href=./text1>link text</a></li> <li><a href=./text2>link text2</a></li> </ul> </body> </html> |
ragnaar > 10-11-2006 13:51:54 |
Al_H |
TLev > 10-11-2006 23:00:08 |
а как же LoVe-HAte ? |
Al_H > 11-11-2006 00:52:12 |
LoVe-HAte работает, если Вы относитесь к active как авторы правила. Есть два варианта - active по наведению подсвечивается, или нет. Если Вас устраивает, что подсвечивается, Вы пишете link visited active hover. Если Вы считаете, что активный элемент и так уже активен, и подсвечиваться не должен, тогда - LoVe-HAte. |
Dark-Demon > 13-11-2006 13:21:29 |
Al_H, а что за любовная хата? я что-то пропустил? |
Al_H > 13-11-2006 17:01:36 |
Dark-Demon
Это известное правило, по первым буквам псевдоклассов |