Резина? Только не для широкоформатников!
Ну во первых строках эмоции: новый монитор хорош, но "Героев" растягивает на формат 10:16, а это не есть гут
И, собственно, задумка хака обусловлена моей пересадкой дома на 1600 при условии, что на работе 1280. Понимаю, что дело привычки, но вот люблю работать в развернутых окнах, а тема Blue мягко говоря не подходит к разрешению 1600.
Итак ТЗ: если у юзера до 1280, то отдаем ему внешнюю таблицу (каркас) на 100%, если более 1280, то отдаем 1250px.
При чем опрос окна и выдачу свойств таблицы требуется производить не только при загрузке, но и при изменении размеров этого окна.
Шаг 1. Создаем яву java_!_sctipts/autowidth.js
Большой сенк-с автору скрипта
Код | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| function getWindowSize() {
var myWidth = 0, myHeight = 0;
if( typeof( window.innerWidth ) == 'number' ) {
//Non-IE
myWidth = window.innerWidth;
myHeight = window.innerHeight;
} else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
//IE 6+ in 'standards compliant mode'
myWidth = document.documentElement.clientWidth;
myHeight = document.documentElement.clientHeight;
} else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
//IE 4 compatible
myWidth = document.body.clientWidth;
myHeight = document.body.clientHeight;
}
if (myWidth>1280){
dd111.style.width = '1250px'
} else {
dd111.style.width = '100%'
}
} |
Шаг 2. На примере темы Blue. Правим templates/Blue/index.html
Есть в той теме самая внешняя таблица, определяющая размеры сайта. Вот ее и надо править.
Ищем Код | 1 2
| <body>
<table width="100%" cellspacing="0" cellpadding="0" border="0"><tr><td align="center" valign="top"> |
меняем на Код | 1 2 3
| <script language="JavaScript" type="text/javascript" src="javascripts/autowidth.js"></script>
<body onResize="getWindowSize();" onLoad="getWindowSize();">
<table align="center" id="dd111" cellspacing="0" cellpadding="0" border="0"><tr><td align="center" valign="top"> |
Пользуемся.
Пример - этот сайт.
Примечание:
1. Нет защиты от отключенных скриптов в браузере, но тестирование на Опере показало, что всё чудным образом работает. Пожалуйста потестируйте и отпишитесь.
2. Гурманы могут подумать и сделать больше градаций, а не только 1280.
3. Ну и конец спору "Какая ширина должна быть на Стабилити" и т.п. темах...
Дата публикации: 13.09.2007 Прочитано: 12296 раз |