Резиновая верстка

Shema
На сайте с 01.12.2005
Offline
176
893

Примерный макет вот

(проценты означают, что в этом месте макет должен тянуться с соответствующим коэффициентом).

То есть вопрос фактически звучит так: как заставить браузер считать проценты не от всей ширины таблицы, а от ширины за вычетом блоков фиксированной длины. Такое реально?

Ну и вопрос на 10 баллов - как такое сверстать без таблиц? :confused:

Студия Design Coda (http://www.designcoda.ru/). Личные контакты: +7(903)1367564, skype:andrey.oshemkov, telegram:@oshemkov. WMID: 492025973671 (https://passport.webmoney.ru/asp/certview4.asp?wmid=492025973671), делаем и рекламируем сайты, мобильные приложения, ботов для Telegram.
MASe
На сайте с 17.09.2002
Offline
219
#1

попробуйте, там где нет растяжки выставить конечные цифры для минимального разрешения (скажем 800*600)

т.е. пикселы для блоков с лого, меню и проч.

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

выставьте эти проценты...

в теории должно работать!!!

правка... туплю...

хотя нет... тут будет все равно растягиваться относительно базиса... а никак не разные проценты...

сорри...

Only God Can Judge Me... Nobody Else... Дрезна (http://www.drezna.ru/) Помощники: Sape (http://www.sape.ru/r.167724536c.php)
IL
На сайте с 06.10.2007
Offline
15
#2

а то что не процентное это фикс на рисунке?

Рисую баннеры от 100 у.е. за штуку - пример тут (/ru/forum/171586)
Shema
На сайте с 01.12.2005
Offline
176
#3
IamLogo:
а то что не процентное это фикс на рисунке?

Да, всё что не проценты, то фикс.

IL
На сайте с 06.10.2007
Offline
15
#4

Хм... я сейчас туплю, но если это фикс, накидайте его в графпакете, в любом человеческом разрешение, и посчитайте процент этих промежутков в процентах от общей щирины... тоесть если у вас на 800 пикселей два блока фикс по 300 и три промежутка: два по 20% и один 60 от общей ширины промежутков, тоесть два по 50пиксов и один 150 пиксов. А от общей ширины экрана это будет два по 6 процентов и один в 19 процентов. И при увеличение экрана скажем до 1024 пиксов вы также будете иметь два фикс блока в 300 пискелей, три блока которые при длине в пикселях 61 и 194 будут иметь приблизительно тоже соотношение, 2 по 20% и один в 60% от суммы ширины резиновых блоков.

...с цифрами напутал, но вроде логика правильная )

MASe
На сайте с 17.09.2002
Offline
219
#5
IamLogo:
Хм... я сейчас туплю, но если это фикс, накидайте его в графпакете, в любом человеческом разрешение, и посчитайте процент этих промежутков в процентах от общей щирины... тоесть если у вас на 800 пикселей два блока фикс по 300 и три промежутка: два по 20% и один 60 от общей ширины промежутков, тоесть два по 50пиксов и один 150 пиксов. А от общей ширины экрана это будет два по 6 процентов и один в 19 процентов. И при увеличение экрана скажем до 1024 пиксов вы также будете иметь два фикс блока в 300 пискелей, три блока которые при длине в пикселях 61 и 194 будут иметь приблизительно тоже соотношение, 2 по 20% и один в 60% от суммы ширины резиновых блоков.

...с цифрами напутал, но вроде логика правильная )

я тоже было поначалу так подумал, но потом понял:

ТС имеет ввиду несколько иное - нужно чтобы блок растягивался на разную ширину... один на 20, другой на 50%

при этом при минимальном разрешении этих процентов может вообще не быть, т.е. все тупо сужается...

т.е. некая гармошка с разным шагом растягивания....

ТС, я правильно Вас понимаю???

если нет - то и мой предыдущий, и данный совет - вполне работоспособны

Shema
На сайте с 01.12.2005
Offline
176
#6
MASe:
при этом при минимальном разрешении этих процентов может вообще не быть, т.е. все тупо сужается...

т.е. некая гармошка с разным шагом растягивания....

ТС, я правильно Вас понимаю???

Да, именно так.

Shema добавил 29.01.2008 в 01:55

Более формализованная постановка задачи: нужно сверстать макет, у которого часть блоков должна тянуться с разными коэффициентами по горизонтали.

Например:

1-я колонка тянется с коэффициентом 1

2-я колонка фиксированной ширины (не тянется вообще, для определённости 100px)

3-я колонка тянется с коэффициентом 2

(то есть при ширине окна браузера в 400px, у нас будет таблица 100-100-200, при ширине 700px будет соответственно 200-100-400 ну и т.д.)

Решение (по идее):

сделать таблицу с шириной 100%, в colgroup задать ширину колонок как width="1*", width="100", width="2*" соответственно.

Проблема: в IE6 не работает (IE6 тянет блок фиксированной ширины, не смотря на то, что он фиксированной ширины; в FF работает)

Нужно любое кроссбраузерное решение (желательно без хаков на js). Есть идеи?

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий