Константин Абрамов
Просветлённый
  
Карма: 28
Сообщений: 876
Нужен сайт? Нет проблем!
|
 |
« : Июнь 25, 2008, 05:37:44 » |
|
А я не слушался!  Проблемка, собственно, небольшая. Из Web-дизайна пока знаю только HTML и CSS. А нужно сделать так, чтобы у пользователя с разрешением экрана 1024*768 при открытии сайта выполнялся скрипт, заменяющий одно значение свойства в прикреплённой CSS на другое. Как это делается? Подскажите, пожалуйста.
|
|
|
Записан
|
ШкольнЕГИ, вам за книжки, а не ко мне в ICQ со своими движковыми проблемами. Бесплатно ни на кого не работаю. Учитесь уважать чужое время и труд!
|
|
|
support@ayola.net
|
 |
« Ответ #1 : Июнь 25, 2008, 05:59:27 » |
|
Как хорошо что вы знаете CSS. Это именно в CSS и делается 
|
|
|
Записан
|
|
|
|
support@ayola.net
|
 |
« Ответ #2 : Июнь 25, 2008, 06:00:51 » |
|
p.s. ну или document.getElementById("IDобъекта").style.чтовыхотитепоменять = "изменение".
|
|
|
Записан
|
|
|
|
-Deadly-
|
 |
« Ответ #3 : Июнь 25, 2008, 13:40:34 » |
|
<script language="javascript"> //ЭТОТ КОД НЕОБХОДИМО ВСТАВИТЬ В КОД //ГЛАВНОЙ СТРАНИЦЫ САЙТА //Инициализируем переменные высоты и ширины var height=0; var width=0; //Определяем реальные значения высоты и ширины if (self.screen) { width = screen.width height = screen.height } //Анализируем найденные параметры и отсылаем //пользователя на страницу с нужным разрешением if (width == 1024 && height == 768) { location.href = "path_to_file_1024x768" } else if (width == 800 && height == 600) { location.href = "path_to_file_800x600" } else if (width == 640 && height == 480) { location.href = "path_to_file_640x480" } else { location.href = "path_to_default_file" } </script> Значения location.href = "path_to_file_640x480 соответственно можно подменить не на переадресацию, а на изменения css
|
|
|
Записан
|
|
|
|
Константин Абрамов
Просветлённый
  
Карма: 28
Сообщений: 876
Нужен сайт? Нет проблем!
|
 |
« Ответ #4 : Июнь 25, 2008, 15:18:52 » |
|
p.s. ну или document.getElementById("IDобъекта").style.чтовыхотитепоменять = "изменение".
Нет, позвольте, а как можно с помощью CSS проверить разрешение экрана?  Это что-то новенькое. То, что вы указали, как я понимаю, занимается изменением атрибута style, а можно ли сделать непосредственное изменение свойства в прикреплённой таблиц стилей, а не в самом html-файле?
|
|
|
Записан
|
ШкольнЕГИ, вам за книжки, а не ко мне в ICQ со своими движковыми проблемами. Бесплатно ни на кого не работаю. Учитесь уважать чужое время и труд!
|
|
|
-Deadly-
|
 |
« Ответ #5 : Июнь 25, 2008, 15:22:59 » |
|
Нет нельзя
Вообще чем вам не нравиться наше решение
Берем этот код и вставляем в начало страницы
<script language="javascript"> var height=0; var width=0; if (self.screen) { width = screen.width height = screen.height } if (width == 1024 && height == 768) { } else if (width == 800 && height == 600) { document.getElementById("style).innerHTML="<link rel='stylesheet' href='style1.css' type='text/css'>" } else if (width == 640 && height == 480) { document.getElementById("style).innerHTML="<link rel='stylesheet' href='style2.css' type='text/css'>" } else { document.getElementById("style).innerHTML="<link rel='stylesheet' href='style3.css' type='text/css'>" } </script>
потом в хеад вставляем <span id="style"></span>
Должно рабатать.
|
|
« Последнее редактирование: Июнь 25, 2008, 15:34:02 от -Deadly- »
|
Записан
|
|
|
|
-Deadly-
|
 |
« Ответ #6 : Июнь 25, 2008, 15:27:17 » |
|
Хотя можно срегинерировать css файл через php, но это изврат.
|
|
|
Записан
|
|
|
|
Константин Абрамов
Просветлённый
  
Карма: 28
Сообщений: 876
Нужен сайт? Нет проблем!
|
 |
« Ответ #7 : Июнь 25, 2008, 15:27:32 » |
|
А как же объект styleSheet? Он, вроде, к таблице стилей обращается непосредственно...
|
|
|
Записан
|
ШкольнЕГИ, вам за книжки, а не ко мне в ICQ со своими движковыми проблемами. Бесплатно ни на кого не работаю. Учитесь уважать чужое время и труд!
|
|
|
-Deadly-
|
 |
« Ответ #8 : Июнь 25, 2008, 15:35:42 » |
|
А как же объект styleSheet? Он, вроде, к таблице стилей обращается непосредственно...
Если срегинирирова css через php он будет находиться в head в <style type="text/css"></style> зачем там styleSheet?
|
|
|
Записан
|
|
|
|
Константин Абрамов
Просветлённый
  
Карма: 28
Сообщений: 876
Нужен сайт? Нет проблем!
|
 |
« Ответ #9 : Июнь 25, 2008, 15:40:14 » |
|
Если срегинирирова css через php он будет находиться в head в <style type="text/css"></style> зачем там styleSheet?
Я вам не о php-скрипте говорю, ибо вы сами сказали, что это извращение, а о реализации с помощью JavaScript.
|
|
|
Записан
|
ШкольнЕГИ, вам за книжки, а не ко мне в ICQ со своими движковыми проблемами. Бесплатно ни на кого не работаю. Учитесь уважать чужое время и труд!
|
|
|
-Deadly-
|
 |
« Ответ #10 : Июнь 25, 2008, 19:56:56 » |
|
Я чего то не пойму что вам надо, заменять css файл при разных разрешения экрана или только несколько свойств?
|
|
|
Записан
|
|
|
|
Константин Абрамов
Просветлённый
  
Карма: 28
Сообщений: 876
Нужен сайт? Нет проблем!
|
 |
« Ответ #11 : Июнь 25, 2008, 20:27:56 » |
|
Опишу ситуацию более подробно. Есть один html-файл, есть прикреплённая к нему таблица стилей. HTML-код подогнан под все распространённые разрешения экрана за исключением 1024*768. Чтобы и на этом разрешении он отображался корректно, необходимо поменять значения двух свойств, которые записаны в прикреплённой таблице стилей. А именно, вместо margin-top: 70px и padding-bottom: 85px сделать margin-top: 0px и padding-bottom: 0px. Вот и всё!
|
|
|
Записан
|
ШкольнЕГИ, вам за книжки, а не ко мне в ICQ со своими движковыми проблемами. Бесплатно ни на кого не работаю. Учитесь уважать чужое время и труд!
|
|
|
-Deadly-
|
 |
« Ответ #12 : Июнь 25, 2008, 20:40:52 » |
|
<script language="javascript"> var height=0; var width=0; if (self.screen) { width = screen.width height = screen.height } if (width == 1024 && height == 768) { document.getElementById("mar").style.marginTop = '0px'; document.getElementById("pad").style.paddingBottom = '0px'; } </script> В нужные элементы вставляем id="mar, pad"
|
|
|
Записан
|
|
|
|
Константин Абрамов
Просветлённый
  
Карма: 28
Сообщений: 876
Нужен сайт? Нет проблем!
|
 |
« Ответ #13 : Июнь 25, 2008, 21:29:48 » |
|
Спасибо большое! Немного позже обязательно попробую! А возможно сделать тоже самое, но с использованием class, а не id?
|
|
|
Записан
|
ШкольнЕГИ, вам за книжки, а не ко мне в ICQ со своими движковыми проблемами. Бесплатно ни на кого не работаю. Учитесь уважать чужое время и труд!
|
|
|
-Deadly-
|
 |
« Ответ #14 : Июнь 25, 2008, 22:12:58 » |
|
можно таким методом document.write="<link rel='stylesheet' href='style1.css' type='text/css'>" добавить дополнительный css и тогда можно использовать class
|
|
|
Записан
|
|
|
|
Константин Абрамов
Просветлённый
  
Карма: 28
Сообщений: 876
Нужен сайт? Нет проблем!
|
 |
« Ответ #15 : Июнь 25, 2008, 22:21:30 » |
|
Тоже вариант. Спасибо большое за подсказки!
|
|
« Последнее редактирование: Июнь 25, 2008, 23:38:55 от Константин Абрамов »
|
Записан
|
ШкольнЕГИ, вам за книжки, а не ко мне в ICQ со своими движковыми проблемами. Бесплатно ни на кого не работаю. Учитесь уважать чужое время и труд!
|
|
|
Константин Абрамов
Просветлённый
  
Карма: 28
Сообщений: 876
Нужен сайт? Нет проблем!
|
 |
« Ответ #16 : Июнь 25, 2008, 23:49:07 » |
|
Эх, ещё один вопросик возник. А что означает чудесное словосочетание self.screen применительно к JavaScript?
|
|
|
Записан
|
ШкольнЕГИ, вам за книжки, а не ко мне в ICQ со своими движковыми проблемами. Бесплатно ни на кого не работаю. Учитесь уважать чужое время и труд!
|
|
|
support@ayola.net
|
 |
« Ответ #17 : Июнь 26, 2008, 01:40:41 » |
|
ничего. синоним window. достаточно просто screen написать.
|
|
|
Записан
|
|
|
|
-Deadly-
|
 |
« Ответ #18 : Июнь 26, 2008, 02:57:28 » |
|
можно вообще этот if снести, это так для надежности 
|
|
|
Записан
|
|
|
|
Константин Абрамов
Просветлённый
  
Карма: 28
Сообщений: 876
Нужен сайт? Нет проблем!
|
 |
« Ответ #19 : Июнь 26, 2008, 03:44:11 » |
|
можно вообще этот if снести, это так для надежности  Что я и сделал. 
|
|
|
Записан
|
ШкольнЕГИ, вам за книжки, а не ко мне в ICQ со своими движковыми проблемами. Бесплатно ни на кого не работаю. Учитесь уважать чужое время и труд!
|
|
|
Константин Абрамов
Просветлённый
  
Карма: 28
Сообщений: 876
Нужен сайт? Нет проблем!
|
 |
« Ответ #20 : Июль 02, 2008, 03:51:33 » |
|
К слову сказать, ни один из выше предложенных способов мне не помог. Мой пытливый мозг  стал мучать поисковики и наткнулся на интересную и умную статейку, которая, кстати, в решении проблемы и помогла. Может кому и пригодится - http://xpoint.ru/know-how/JavaScript/TablitsyiStiley?2
|
|
|
Записан
|
ШкольнЕГИ, вам за книжки, а не ко мне в ICQ со своими движковыми проблемами. Бесплатно ни на кого не работаю. Учитесь уважать чужое время и труд!
|
|
|
|