Закрыть тэг оформления (opera/privoxy)

Любые разговоры которые хоть как-то связаны с тематикой форума

Модератор: Модераторы разделов

Аватара пользователя
ZyX
Сообщения: 355
ОС: Gentoo

Закрыть тэг оформления

Сообщение ZyX »

Есть страница со следующим исходным кодом:

Код: Выделить всё

<html>
    <body>
        <div>
            <b>abc
        </div>
        ghi
    </body>
</html>

Надо сделать так, чтобы ghi отображалась нормальным шрифтом, при этом можно
заменить „<div>“ и „</div>” на что угодно, но нельзя редактировать ни <b>abc, ни
ghi. Незакрытых тёгов может быть сколько угодно, причём необязательно <b>.
Никаких комментариев гарантированно нет (то есть можно поставить
метку-комментарий и Javascript’ом закрыть все тёги, только не хочется привлекать
userjs). Также нет никаких пользовательских тёгов. Желательно обойтись только
заменой div’ов на что-то (то есть, только средствами Privoxy). Также желательно
кроссбраузерное решение, но достаточно, если будет работать на последней α’е
Opera.

Задача родилась, когда столкнулся с такой фигнёй в аннотации к разделу
Эльтерруса на самиздате. У меня есть очень большая пачка регулярных выражений
для privoxy, которая приводит СИ в более читаемый вид.
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5426
ОС: Gentoo

Re: Закрыть тэг оформления

Сообщение /dev/random »

Кроссбраузерного решения не будет. Незакрытые теги - это _ошибка_. По соглашению, в случае ошибок в html, браузер должен предположить, что же этот идиотавтор имел в виду. И каждый браузер делает предположения по-своему, и отображает страницу с ошибками по-разному.
Спасибо сказали:
Аватара пользователя
xorader
Сообщения: 1030
Статус: собирающий миры
ОС: Debian

Re: Закрыть тэг оформления

Сообщение xorader »

... в вообще, div'ы - SUX (IMHO!)
Molchanov Alexander (aka Xor)
*offtopic* - ololo!
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Закрыть тэг оформления

Сообщение sash-kan »

xorader писал(а):
29.04.2010 16:01
... в вообще, div'ы - SUX (IMHO!)
чем же прикажете верстальщикам рисовать гламурные скруглённые уголочки?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
ZyX
Сообщения: 355
ОС: Gentoo

Re: Закрыть тэг оформления

Сообщение ZyX »

/dev/random писал(а):
29.04.2010 15:54
Кроссбраузерного решения не будет. Незакрытые теги - это _ошибка_. По соглашению, в случае ошибок в html, браузер должен предположить, что же этот идиотавтор имел в виду. И каждый браузер делает предположения по-своему, и отображает страницу с ошибками по-разному.

А не кросс-браузерное, но без JavaScript? По идее, можно просто тупо закрыть все
тёги, содержащие некоторую метку, до этой самой метки, но мне хотелось бы чтобы
я мог отключить нафиг все скрипты на СИ: единственные скрипты, которые там могут
быть можно поместить только в атрибут href ссылки, поэтому годны они будут
только чтобы выманивать cookie у доверчивых пользователей.
Спасибо сказали:
Аватара пользователя
Davinel
Сообщения: 481
ОС: Ubuntu

Re: Закрыть тэг оформления

Сообщение Davinel »

xorader писал(а):
29.04.2010 16:01
... в вообще, div'ы - SUX (IMHO!)

Оо, а что вместо них? Назад, к табличной верстке, что ли?
Спасибо сказали:
Аватара пользователя
zombie
Сообщения: 539
ОС: Ubuntu 10.04 with OpenBox

Re: Закрыть тэг оформления

Сообщение zombie »

Ну блин... тоже мне вопрос...
Ну замени ты эти div'ы на <table><tr><td> и </td></tr></table> соответственно чтоли..
если внутри могут быть table (в.т.ч. td tr th и пр.), то пропиши еще раз </td></tr></table> и еще раз в зависимости от того, сколько допускается незакрытых table,
масса вариантов.
и это кросс-браузерное решение.

Код: Выделить всё

<html>
    <body>
        <table><tr><td>
            <b>abc
        </td></tr></table>
        ghi
    </body>
</html>

Код: Выделить всё

<html>
    <body>
        <table><tr><td>
             <table>
                  <tr>
                      <td><b>abc
        </td></tr></table>
        </td></tr></table>
        ghi
    </body>
</html>

ну и чтобы не портить дизайн добавь таблице cellpadding="0" cellspacing="0"
ЛИНУКСФОРУМ ДЛЯ ЛЮДЕЙ | Гугляшечка | Блог
I'm banned by /dev/random with his team.
Спасибо сказали:
Аватара пользователя
SLEDopit
Модератор
Сообщения: 4824
Статус: фанат консоли (=
ОС: GNU/Debian, RHEL

Re: Закрыть тэг оформления

Сообщение SLEDopit »

zombie писал(а):
19.05.2010 18:29
Ну блин... тоже мне вопрос...
Вопрос не как изменить это на сервере, а как изменить это на стороне клиента. С помощью браузера.
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
Спасибо сказали:
Аватара пользователя
zombie
Сообщения: 539
ОС: Ubuntu 10.04 with OpenBox

Re: Закрыть тэг оформления

Сообщение zombie »

SLEDopit писал(а):
19.05.2010 18:31
Вопрос не как изменить это на сервере, а как изменить это на стороне клиента. С помощью браузера.

ZyX писал(а):
28.04.2010 20:38
при этом можно
заменить „<div>” и „</div>” на что угодно

ZyX писал(а):
29.04.2010 19:54
А не кросс-браузерное, но без JavaScript?

И как вы себе представляете на стороне клиента, но без js?
ЛИНУКСФОРУМ ДЛЯ ЛЮДЕЙ | Гугляшечка | Блог
I'm banned by /dev/random with his team.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Закрыть тэг оформления

Сообщение sash-kan »

zombie писал(а):
19.05.2010 18:53
на стороне клиента, но без js
vbscript?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
zombie
Сообщения: 539
ОС: Ubuntu 10.04 with OpenBox

Re: Закрыть тэг оформления

Сообщение zombie »

sash-kan писал(а):
19.05.2010 18:57
vbscript?

На опере не работает (вообще сомневаюсь, что работает еще где-то, кроме IE)
ЛИНУКСФОРУМ ДЛЯ ЛЮДЕЙ | Гугляшечка | Блог
I'm banned by /dev/random with his team.
Спасибо сказали:
Аватара пользователя
SLEDopit
Модератор
Сообщения: 4824
Статус: фанат консоли (=
ОС: GNU/Debian, RHEL

Re: Закрыть тэг оформления

Сообщение SLEDopit »

zombie писал(а):
19.05.2010 18:53
И как вы (SLEDopit) себе представляете на стороне клиента, но без js?
Если бы я представлял себе дельный способ, я бы непременно о нем написал.
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
Спасибо сказали:
Аватара пользователя
zombie
Сообщения: 539
ОС: Ubuntu 10.04 with OpenBox

Re: Закрыть тэг оформления

Сообщение zombie »

SLEDopit писал(а):
19.05.2010 18:59
Если бы я представлял себе дельный способ, я бы Непременно о нем написал.
на стороне клиента выполняются только скрипты (html - не может изменить отображение кода уже написанной страницы), из скриптов вряд-ли какой-то, кроме JS работает на опере, к примеру.
ЛИНУКСФОРУМ ДЛЯ ЛЮДЕЙ | Гугляшечка | Блог
I'm banned by /dev/random with his team.
Спасибо сказали:
Аватара пользователя
ZyX
Сообщения: 355
ОС: Gentoo

Re: Закрыть тэг оформления

Сообщение ZyX »

zombie писал(а):
19.05.2010 18:29
Ну блин... тоже мне вопрос...
Ну замени ты эти div'ы на <table><tr><td> и </td></tr></table> соответственно чтоли..
если внутри могут быть table (в.т.ч. td tr th и пр.), то пропиши еще раз </td></tr></table> и еще раз в зависимости от того, сколько допускается незакрытых table,
масса вариантов.
и это кросс-браузерное решение.

Код: Выделить всё

<html>
    <body>
        <table><tr><td>
            <b>abc
        </td></tr></table>
        ghi
    </body>
</html>

Код: Выделить всё

<html>
    <body>
        <table><tr><td>
             <table>
                  <tr>
                      <td><b>abc
        </td></tr></table>
        </td></tr></table>
        ghi
    </body>
</html>

ну и чтобы не портить дизайн добавь таблице cellpadding="0" cellspacing="0"

Спасибо, работает.
Спасибо сказали:
Аватара пользователя
Galaxy
Сообщения: 158
Статус: Говорящий со звёздами
ОС: Debian GNU/Linux

Re: Закрыть тэг оформления

Сообщение Galaxy »

xorader писал(а):
29.04.2010 16:01
... в вообще, div'ы - SUX (IMHO!)


Как это понимать?
Si vis pacem, para bellum.
Спасибо сказали:
Аватара пользователя
ZyX
Сообщения: 355
ОС: Gentoo

Re: Закрыть тэг оформления

Сообщение ZyX »

Galaxy писал(а):
20.05.2010 12:33
xorader писал(а):
29.04.2010 16:01
... в вообще, div'ы - SUX (IMHO!)


Как это понимать?

Очень просто: это значит, что верстать надо в TeX’е, в нём нет div’ов.
Спасибо сказали:
Аватара пользователя
Galaxy
Сообщения: 158
Статус: Говорящий со звёздами
ОС: Debian GNU/Linux

Re: Закрыть тэг оформления

Сообщение Galaxy »

ZyX писал(а):
20.05.2010 19:03
Galaxy писал(а):
20.05.2010 12:33
xorader писал(а):
29.04.2010 16:01
... в вообще, div'ы - SUX (IMHO!)


Как это понимать?

Очень просто: это значит, что верстать надо в TeX'е, в нём нет div'ов.



Верстать что?
Si vis pacem, para bellum.
Спасибо сказали: