X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> IE6 наследование свойств
FightInGlory
FightInGlory
Topic Starter сообщение 12.1.2011, 14:13; Ответить: FightInGlory
Сообщение #1


Привожу как пример
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Orangeline</title>
<style>
*{
padding:0;
margin:0;
}
html,body{
height:100%;
width:100%;
}
.block{
width:200px;
height:200px;
float:left;
}
.block.first{
background:red;
}
.block.second{
background:green;
}
.block.first.next{
border:3px solid blue;
}
</style>

</head>

<body>
<div class="block first next"></div>
<div class="block second next"></div>
</body>
</html>

Все браузеры кроме ie6 поймут написанное как два квадрата первый с бордером, а второй без. Но ie6 для обоих приминяет свойство бордер. Если проследить за свойствами через дебаг панель, то видно, что наследование по классам ему не по силам лишь от класса к тегу или от тега к тегу. Можно ли как-то заставить ie6 понимать наследование?

Написать свойства так не подойдет, потому что это не решает проблему наследования, а лишь присваивает классу first бордер.
[CSS]
.next.block.first{
border:3px solid blue;
}
[/CSS]
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
tgarl
tgarl
сообщение 13.1.2011, 19:01; Ответить: tgarl
Сообщение #2


ты немного переборщил. во первых между классами ставь пробел(но это не сработает так как у тебя нет вложенности) - ie6 не понимает такой конструкции, это точно, и он применяет свойства к классу next. этот класс есть у обоих блоков. если тебе нужно применить только к классу first? то так и пиши
[CSS].first {border:3px solid blue;}[/CSS]

а конструкция которую ты применяешь это не наследование: class="block first next" - это 3 разных класса применимых для данного блока
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Malganus
Malganus
сообщение 13.1.2011, 20:08; Ответить: Malganus
Сообщение #3


наследование классов используется несколько другим способом, пример:
[CSS].block{width:200px;height:200px;float:left;}
.block b{бла бла бла}[/CSS]

<div class="block">
<b></b>
</div>


вот тут класс block b применится всем тегам <b> в блоке с классом block
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
FightInGlory
FightInGlory
Topic Starter сообщение 14.1.2011, 11:34; Ответить: FightInGlory
Сообщение #4


tgarl, я выразился неправильно, но вы меня поняли. При вложености конечно все отлично, но всеже при использовании нескольких классов, зависимость ИЕ6 не понимает.
Я подумал и пришел к выводу что придется делать так
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Orangeline</title>
<style>
*{
padding:0;
margin:0;
}
html,body{
height:100%;
width:100%;
}
.block{
width:400px;
height:200px;
}
.inside{
width:100%;
height:100%;
border:1px solid red;
}
.n2 .inside{
background:blue;
}
.n3 .inside{
background:green;
}
</style>
</head>

<body>
<div class="block">
<div class="inside"></div>
</div>
<div class="block n2">
<div class="inside"></div>
</div>
<div class="block n3">
<div class="inside"></div>
</div>
</body>
</html>

До этого я всегда присваивал классы именно тому элементу который надо модифицировать, но как оказывается это не совсем правильно если хочешь корректного отображения в IE6.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
tgarl
tgarl
сообщение 14.1.2011, 15:48; Ответить: tgarl
Сообщение #5


попробуй объяснить в чем задача выражается, по последнему примеру я бы код изменил на следующий:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Orangeline</title>
<style>
*{
padding:0;
margin:0;
}
html,body{
height:100%;
width:100%;
}
.block{
width:400px;
height:200px;
border:1px solid red;
}

.n2{
background:blue;
}
.n3{
background:green;
}
</style>
</head>

<body>
<div class="block">&nbsp;</div>
<div class="block n2">&nbsp;</div>
<div class="block n3">&nbsp;</div>
</body>
</html>


по предыдущему примеру на такой:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Orangeline</title>
<style>
*{
padding:0;
margin:0;
}
html, body{
height:100%;
width:100%;
}
.block{
width:200px;
height:200px;
float:left;
}
.first{
background:red;
border:3px solid blue;
}
.second{
background:green;
}
</style>

</head>

<body>
<div class="block first"></div>
<div class="block second"></div>
</body>
</html>
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Licoric
Licoric
сообщение 15.1.2011, 0:57; Ответить: Licoric
Сообщение #6


Хватит тут уже некрофилии. Уже официально браузер 6-й версии умер. Под него никто ничего не делает и делать не будет. Смотрите в будущее и не тормозите прогресс.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
FightInGlory
FightInGlory
Topic Starter сообщение 17.1.2011, 10:32; Ответить: FightInGlory
Сообщение #7


Когда заказчик требует особо не по выпендриваешься и ему не довод, что все ведущие сайты не поддерживают, или просят о том чтобы обновили браузер, заказчики заходят на gmail, facebook, vkontakte, odnoklassiki и говорят вот у них все отлично отображается должно быть и у нас. Мне самому не охота переписывать часть css и скриптов, но выбора нет.

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Баги в ie6
4 websun 6409 15.4.2011, 11:55
автор: -Yuri-
Открытая тема (нет новых ответов) Несколько вопросов сразу: таблицы на дивах, наследование и др.
2 Dymytry 6406 18.3.2011, 3:13
автор: -Serlutin-
Открытая тема (нет новых ответов) центрирование не работает в IE6
6 ChipAlina 7527 22.12.2010, 14:13
автор: -FightInGlory-
Открытая тема (нет новых ответов) В IE6 display:none работает своеобразно
14 AliNurqoja 14487 22.10.2009, 13:56
автор: -AliNurqoja-


 



RSS Текстовая версия Сейчас: 25.4.2024, 11:25
Дизайн