Полезная информация

Общайтесь со знакомыми и друзьями в нашем сообществе в Facebook.

№107-11-2006 11:27:31

dimsi
Участник
 
Группа: Members
Зарегистрирован: 07-11-2006
Сообщений: 8

Для тех у кого проблемы с CSS выражениями в firefox 2.0

В firefox 2.0 (возможно и в версиях >=1.0.7) выражения с тэгом A (#element A DIV {...} #element A.active DIV {...}) работают не корректно.
Короче "A" теперь не inline элемент, а непонятно кто, возможно и другие тэги пострадали, но с <A> проблема лечится втыканием внутрь A тэга SPAN.
<a href=...><span>.....</span></a>
Причем стили переписывать не надо, span все лечит.

Фокса не ругать, у Unix'оидов другого бровсера нет, а админы обязательно должны на Unix'е сидеть.

Отсутствует

 

№207-11-2006 11:30:48

Lynn
Кофеман
 
Группа: Members
Откуда: Россия
Зарегистрирован: 16-02-2005
Сообщений: 1721
Веб-сайт

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

dimsi
Вы это к чему вообще?


Isn't it ironic... don't you think? — Alanis Morissette

Отсутствует

 

№307-11-2006 11:49:19

dimsi
Участник
 
Группа: Members
Зарегистрирован: 07-11-2006
Сообщений: 8

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

К тому что fox'e 2.0 стал криво работать со стилями, то что работало в moziila1.0-Fox1.0.6, Opera6.0-9.0, IE4-IE7 работать перестало.
В частности вложенные в A не inline элементы в стилях теперь не обрабатываются.
Например стилевые меню http://www.realcoding.net/article/view/2731 работавшие в moziila1.0-Fox1.0.6
Кто с этим столкнулся, тот поймет про что речь.

Отсутствует

 

№407-11-2006 12:04:14

Dark-Demon
Участник
 
Группа: Members
Зарегистрирован: 20-02-2006
Сообщений: 1278

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

dimsi, RTFM. никакого DIV внутри A быть не может. если бы ты верстал правильно, таких проблем бы небыло.

вот такие вот чудеса иногда случаются, когда DIV суёшь внутрь A: http://dark-demon.nm.ru/web/samples/moz_margin_bug.htm


!

Отсутствует

 

№507-11-2006 12:09:46

Lynn
Кофеман
 
Группа: Members
Откуда: Россия
Зарегистрирован: 16-02-2005
Сообщений: 1721
Веб-сайт

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

dimsi пишет

В частности вложенные в A не inline элементы в стилях теперь не обрабатываются.

А это что? 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>

Isn't it ironic... don't you think? — Alanis Morissette

Отсутствует

 

№607-11-2006 12:24:40

dimsi
Участник
 
Группа: Members
Зарегистрирован: 07-11-2006
Сообщений: 8

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

Это из той же Oper'ы, что все страницы должны быть квадратные и каждому бровсеру свой стиль <смерть модемам - даеш страницы в 500K!>.
С такой политикой Mozill'у постигнет участь netscape, я предлагаю решения которые продлят жизнь хитрых страниц под mozill'у.

Отсутствует

 

№707-11-2006 12:37:31

Dark-Demon
Участник
 
Группа: Members
Зарегистрирован: 20-02-2006
Сообщений: 1278

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

Lynn, http://validator.w3.org/check?uri=http%3A%2F%2Fdev.lynn.ru%2F_%2Fa-div.xhtml
http://zvon.org/xxl/xhtmlReference/Output/Strict/el_a.html

dimsi, все страницы должны быть валидные.


!

Отсутствует

 

№807-11-2006 12:46:22

Lynn
Кофеман
 
Группа: Members
Откуда: Россия
Зарегистрирован: 16-02-2005
Сообщений: 1721
Веб-сайт

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

Dark-Demon
Ну понятно, что валидироваться это не будет. Эта страничка служит опровержением процитированного выше утверждения.


Isn't it ironic... don't you think? — Alanis Morissette

Отсутствует

 

№907-11-2006 13:05:14

dimsi
Участник
 
Группа: Members
Зарегистрирован: 07-11-2006
Сообщений: 8

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

Валидаторы не авторитет, они придуманны недавно, а страницы сделанны давно, завтра запретят растягивающиеся страницы TD width=4000 и в замен ничего. Политика "мы свой мы новый мир построим" ничего хорошего netscape не принесла (впомним LAYER и кардинальный отказ от него + последующий отказ WebMaster'ов что либо писать под перевертыша-netscape), ту то IE и вышел в люди, потому что политики не менял.

Отсутствует

 

№1007-11-2006 13:21:44

Dark-Demon
Участник
 
Группа: Members
Зарегистрирован: 20-02-2006
Сообщений: 1278

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

Lynn, и в чём состоит опровержение? в том, что в одном конкретном случае это будет отображено правильно? вынужден тебя огорчить - браузеры еле справляются с отображением валидных вещей, а уж инвалидные они совсем вразнобой показывают. так что когда ты начнёшь дополнять стилями, где-нибудь из-за этого у тебя может поехать, и потом долго будешь искать причину...

dimsi, валидаторы, как и спецификации придуманы очень давно. впрочем совать DIV внутрь А никогда было нельзя, и применение такой техники является хаком, работоспособность которых никто не гарантирует.

Отредактировано Dark-Demon (07-11-2006 13:24:56)


!

Отсутствует

 

№1107-11-2006 15:26:42

Lynn
Кофеман
 
Группа: Members
Откуда: Россия
Зарегистрирован: 16-02-2005
Сообщений: 1721
Веб-сайт

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

Dark-Demon
Во-первых, я привёл то, что в математике называют контр-примером. Следовательно утверждение ложно. Возможно, если добавить какие-то ещё условия (например, что в a должно быть вложено три десятка блоков и всё это должно быть выравнено вправо), то утверждение станет истинным, но в том виде, в каком оно записано сейчас оно ложно.

так что когда ты начнёшь дополнять стилями, где-нибудь из-за этого у тебя может поехать, и потом долго будешь искать причину...

А я и не утверждаю, что всё будет хорошо. Я опровергаю утверждение о том, что „вложенные в A не inline элементы в стилях теперь не обрабатываются“.


Во-вторых, CSS, вообще говоря, никак не привязан к HTML, поэтому валидность HTML с точки зрения DTD здесь вообще не играет никакой роли. С помощь CSS можно оформить абстрактный XML-документ, в котором можно вкладывать div в a


Isn't it ironic... don't you think? — Alanis Morissette

Отсутствует

 

№1207-11-2006 15:46:17

Dark-Demon
Участник
 
Группа: Members
Зарегистрирован: 20-02-2006
Сообщений: 1278

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

Я опровергаю утверждение о том, что „вложенные в A не inline элементы в стилях теперь не обрабатываются“.

ой, сории-сори-сори :whiteflag:


!

Отсутствует

 

№1308-11-2006 01:07:30

Unghost
Призрак-админ
 
Группа: Administrators
Откуда: Moscow, Russia
Зарегистрирован: 08-10-2004
Сообщений: 11771

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

==> Разработка


Do not meddle in the affairs of Wizards, for they are subtle and quick to anger.

Отсутствует

 

№1409-11-2006 19:02:51

dimsi
Участник
 
Группа: Members
Зарегистрирован: 07-11-2006
Сообщений: 8

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

Я опять встряну, пример то забыл привести.
У меня лично была проблема такая:
Хотел чтоб кубик LI тоже подсвечивался и протыканность ссылки была видна на LI,
Как сделать такое по уставу не знаю.
Делал так: (работает в IE, Opera7-9, Mozilla1-FireFox1.0.6)
---
<style>
.myLink A { text-decoration: none }
.myLink :link LI, .myLink A:link { color: #000000 }
.myLink :active LI, .myLink A:active { color: #824EE1 }
.myLink :visited LI, .myLink A:visited { color: #000000 }
.myLink :hover LI, .myLink A:hover { color: red }
</style>

<ul class=myLink type=square>
<a href=./text1><li>link text</li></a>
<a href=./text2><li>link text2</li></a>
</ul>

-----
В Mozilla 2.0 такой фокус перестал работать.

Вылечил методом:
<a href=./text2><span><li>link text2</li></span></a>

В чем неправ?

Отсутствует

 

№1509-11-2006 19:14:52

Dark-Demon
Участник
 
Группа: Members
Зарегистрирован: 20-02-2006
Сообщений: 1278

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

<ul class=myLink type=square>
<a href=./text1><li>link text</li></a>
<a href=./text2><li>link text2</li></a>
</ul>

опять ты вставляешь блочный элемент в строчный.

<ul class=myLink type=square>
<li><a href=./text1>link text</a></li>
<li><a href=./text2>link text2</a></li>
</ul>

а для A задай display:block и растяни её на весь LI


!

Отсутствует

 

№1609-11-2006 19:28:49

dimsi
Участник
 
Группа: Members
Зарегистрирован: 07-11-2006
Сообщений: 8

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

Так кубики LI не подсвечиваются, или я непонял?
Тобиш буллеты должны иметь цвет сылки, link, visited, active, hover

Отредактировано dimsi (09-11-2006 19:39:52)

Отсутствует

 

№1709-11-2006 19:56:26

Dark-Demon
Участник
 
Группа: Members
Зарегистрирован: 20-02-2006
Сообщений: 1278

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

dimsi, подсвечивай не LI а А.


!

Отсутствует

 

№1810-11-2006 08:34:27

dimsi
Участник
 
Группа: Members
Зарегистрирован: 07-11-2006
Сообщений: 8

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

Не понял. Код в студию.
Я <A> и подсвечиваю, тот кусок ".myLink :link LI" можно выкинуть, он не для этого бровсера.
Буллеты должны иметь цвета сылок.
Как это сделать не нарушая закона, и не теряя функциональности OL, UL списков.
--
Такое использование OL UL сплош и рядом, глупо выглядит когда ссылка меняет цвет, а буллет нет.

Отсутствует

 

№1910-11-2006 11:10:47

ragnaar
Administrator
 
Группа: Administrators
Зарегистрирован: 14-10-2004
Сообщений: 2567
Веб-сайт

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

Если уж на то пошло, то мне кажется что должно выглядеть так

Выделить код

Код:

<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>

В данном примере подсвечиваются и буллеты и код - правильный.
Претензии в данном случае не к Firefox, а как раз к IE, потому что именно IE не поддерживает псевдо-классы для других элементов кроме  A.
Хотя если я не ошибаюсь в 7 версии его этому наконец-то научили

Отсутствует

 

№2010-11-2006 13:14:44

Al_H
Away
 
Группа: Members
Откуда: SPb
Зарегистрирован: 10-06-2005
Сообщений: 5508

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

ragnaar
Я конечно прошу прощения, но код не вполне правильный. :link , :active и :visited применимы только ко ссылкам.
Скорее уж так:

Выделить код

Код:

<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>

Отсутствует

 

№2110-11-2006 13:51:54

ragnaar
Administrator
 
Группа: Administrators
Зарегистрирован: 14-10-2004
Сообщений: 2567
Веб-сайт

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

Al_H
Спасибо за поправку :beer:
Я не мудрствуя просто просто копировал один и тот же фрагмент :)

Отсутствует

 

№2210-11-2006 23:00:08

TLev
Участник
 
Группа: Members
Зарегистрирован: 18-06-2005
Сообщений: 317

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

а как же LoVe-HAte ? ;)

Отсутствует

 

№2311-11-2006 00:52:12

Al_H
Away
 
Группа: Members
Откуда: SPb
Зарегистрирован: 10-06-2005
Сообщений: 5508

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

LoVe-HAte работает, если Вы относитесь к active как авторы правила. Есть два варианта - active по наведению подсвечивается, или нет. Если Вас устраивает, что подсвечивается, Вы пишете link visited active hover. Если Вы считаете, что активный элемент и так уже активен, и подсвечиваться не должен, тогда - LoVe-HAte.

Отсутствует

 

№2413-11-2006 13:21:29

Dark-Demon
Участник
 
Группа: Members
Зарегистрирован: 20-02-2006
Сообщений: 1278

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

Al_H, а что за любовная хата? я что-то пропустил?


!

Отсутствует

 

№2513-11-2006 17:01:36

Al_H
Away
 
Группа: Members
Откуда: SPb
Зарегистрирован: 10-06-2005
Сообщений: 5508

Re: Для тех у кого проблемы с CSS выражениями в firefox 2.0

Dark-Demon

я что-то пропустил?

Это известное правило, по первым буквам псевдоклассов
:link
o
:visited
e
:hover
:active
t
e
(кстати, hate - ненависть)
:link
:visited
:hover
:active
так :hover перекрывает :link, :visited, а :active перекрывает :hover. Это правильно в том смысле, что ссылки подсвечиваются по наведению, не только обычные, но и посещенные, но активные не подсвечиваются. Если Вы хотите, чтобы подсвечивались и активные, определение :hover нужно поставить последним, после :active.

Отредактировано Al_H (13-11-2006 17:02:16)

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]