Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как подключить файл со стилями для различных браузеров?
 
 автор: ildarufa   (18.05.2007 в 08:50)   письмо автору
 
 

Сначала сделал так:

<script language="javascript" type="text/javascript">
if (navigator.appName !== "Microsoft Internet Explorer")   window.location.href = "index2.html";
</script>

А потом подумал, у меня в index.html для других браузеров отличаются только стили. Наверное, лучше просто подключить другой файл со стилями., который подключается при помощи <link href="style.css" rel="stylesheet" type="text/css">. Я хочу сделать файл с именем style2.css и подключить его при помощи JS. Как это сделать, точнее что нужно написать вместо window.location.href = "index2.html" в вышеприведённом коде?

   
 
 автор: himic   (18.05.2007 в 09:19)   письмо автору
 
   для: ildarufa   (18.05.2007 в 08:50)
 

документ врайт твой стиль (<link href="Rus/leadstyle.css" rel="stylesheet" type="text/css">)

   
 
 автор: Lelik   (18.05.2007 в 09:47)   письмо автору
 
   для: ildarufa   (18.05.2007 в 08:50)
 

вместо подключения разных стилевых таблиц для разных браузеров, писать кроссбраузерные стили.
например в ФФ нужен отступ 10 пикселов в ИЕ 20:

element.elem_class{
margin:10px;//margin:20px;
}


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

<link rel="stylesheet" href="style.css" media="all" type="text/css">
<link rel="stylesheet" href="opera.css" media="all" type="text/opera">

   
 
 автор: ildarufa   (18.05.2007 в 10:42)   письмо автору
 
   для: Lelik   (18.05.2007 в 09:47)
 

А для Мазилы можно так написать

<link rel="stylesheet" href="mazila.css" media="all" type="text/firefox">

? Это сработает?

   
 
 автор: Lelik   (18.05.2007 в 11:32)   письмо автору
 
   для: ildarufa   (18.05.2007 в 10:42)
 

нет. такая фича существует только у оперы. но я повторяю: пиши кроссбраузерные стили.

   
 
 автор: ildarufa   (18.05.2007 в 12:20)   письмо автору
 
   для: Lelik   (18.05.2007 в 11:32)
 

А в какой книге описано вот это margin:10px;//margin:20px;? Просто я никогда не сталкивался, чтобы через слэш писалось.
У меня сейчас написано так:

h1 {
    padding-top: 18px;
}

Насколько я понимаю, оба браузера должны одинаково воспринимать этот код, однако выглядит иначе. Чтобы это как-то исправить мне нужно, чтобы в Мазиле padding-top было 8px. Для меня странно выглядит, что если я напишу через двойной слэш, то IE будет воспринимать один вариант, а мазила другой - вот в чём дело. Хотелось бы прочитать об этом, чтобы восполнить пробел в знаниях, да и узнать, как это лучше реализовать.

   
 
 автор: ilyaILF   (18.05.2007 в 12:45)   письмо автору
 
   для: ildarufa   (18.05.2007 в 12:20)
 

Если вы добавите в ваши стили:
h1 { 
    padding-top: 18px; 
    margin: 0;
}
то у вас все будет отображаться правильно во всех броузерах.
А вообще правильней будет записать:
<div style="background: green; padding-top: 18px;">
<h1 style="background: red; margin: 0;">My Page</h1>
</div>
чем
<div style="background: green;">
<h1 style="background: red; margin: 0; padding-top: 18px;">My Page</h1>
</div>
потому, что padding - это внутренний отступ, или другими словами набивка. Но здесь же опять жестких правил нет форматирования, надо просто каждый раз пользоваться background-color для каждого элемента верстки, чтобы выглядело более наглядно то, что происходит на странице.
P.S. Вообще изначально удобнее обнулить все отступы и бордюры у всех, впоследствии используемых на странице, элементов. И потом по-необходимости их проставлять. Например в IE не получается поставить высоту элемента 1px пока не обнулится размер шрифта, потому, что изначально тег рассчитан на определенный размер шрифта, используемый по-умолчанию и меньше него размер выставить сразу не удается, приходится обнулять размер шрифта font-size: 0 ;

   
 
 автор: AlexSol   (18.05.2007 в 12:47)   письмо автору
 
   для: ilyaILF   (18.05.2007 в 12:45)
 

>А вообще правильней будет записать:
<div style="background: green; padding-top: 18px;">
><h1 style="background: red; margin: 0;">My Page</h1>
></div>
чем
<div style="background: green;">
><h1 style="background: red; margin: 0; padding-top: 18px;">My Page</h1>
></div>
потому, что padding - это внутренний отступ, или другими словами набивка. Но здесь же опять жестких правил нет форматирования, надо просто каждый раз пользоваться background-color для каждого элемента верстки, чтобы выглядело более наглядно то, что происходит на странице.
----------------------------------------------
неправ. padding и mardin есть у всех элементов. лишний контейнер тут не к месту.

   
 
 автор: AlexSol   (18.05.2007 в 12:45)   письмо автору
 
   для: ildarufa   (18.05.2007 в 12:20)
 

кроме padding есть еще и margin. в разных браузерах эти свойства имеют разные деволтные значения.
достаточно указать принудительно margin:0 - и проблема уйдет.

записи начинаемые с // как и с * - это хак. это понимает тока ie.

   
 
 автор: ilyaILF   (18.05.2007 в 12:55)   письмо автору
 
   для: AlexSol   (18.05.2007 в 12:45)
 

To AlexSol, предполагалось, что изначально H1 принадлежит какому-нибудь контейнеру, относительно которого и производится позиционирование.
P.S. "padding и mardin есть у всех элементов" - даже как-то обидно слышать такое, не первый день верстаем. :-) КОНЕЧНО - ДА!!! AlexSol - Вы совершенно правы!!! :-)

   
 
 автор: ildarufa   (18.05.2007 в 14:12)   письмо автору
 
   для: ilyaILF   (18.05.2007 в 12:55)
 

Спасибо большое! Тогда можно обойтись и без JS!

   
 
 автор: AlexSol   (18.05.2007 в 14:15)   письмо автору
 
   для: ilyaILF   (18.05.2007 в 12:55)
 

конечно прав, я тоже не первый день верстаю :)

я лично никогда в отдельный блок не вношу h* ol-ul . ибо смысла нет, а если елемент не один, то мне проще указать именно для него параметры а не для родителя, но это я про себя :)

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования