Перечень статей   Цветовые обозначения   Choose language


Совершенствуем поведение браузера



Якори в пределах и за пределы сайта

Предъявим к браузеру новое требование: пусть три следующих вида html-якорей отличаются визуально и на слух

Пусть все три вида якорей выделяются подчеркиванием

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

Отправка только измененных элементов интерфейса

Пусть элементы интерфейса отправляются на сервер только в том случае, если отличаются от значений, которые у них были сразу после загрузки документа. Например, текстовые элементы интерфейса <input type=text value=from_database> могут иметь первоначальные значения из базы данных, и таких полей может быть очень много. Измененные значения также заносятся в базу данных - не надо усложнять логику принимающего скрипта на языке запросов.

Правильное отображение индексов

Известно, что индексы в свою очередь могут тоже иметь индексы, например

Ti3 22r
Но это невозможно изобразить средствами html, т.к. буква не может опуститься на подстрочный уровень относительно подстрочного уровня, в результате получается так: Ti3. Предлагаю конструкции типа ниже приведенных интерпретировать новым, выше указанным способом.
<sub>i <sub>3</sub> </sub>
<super>2 <super>r</super> </super>

Известно, что когда переменная имеет два индекса справа (или два индекса слева)


то их записывают один под другим, а браузер рисует Tij В том случае, когда после одного подстрочно-надстрочного тега стоит другой
<sub>j</sub><super>i</super>
браузер не должен оступать вправо.

P.S.

Кроме тегов sub и super необходимы также теги up и down, располагающие свое содержимое над и под предыдущим словом или html-элементом.

Отображение математических символов

Существует более простой, чем MathML, способ записывать математические формулы. Некоторые математические символы должны не отображаться в строке, а использоваться для построения формулы. Это символ "/", существующий во всех кодировках, и это символы "" и "" (комплексное сопряжение). Таким образом выражение "(a+b+c)/(d+e)" должно отображаться как , выражение "a(b+c)" - как , выражение "(a+b)" - как .

Идея состоит в том, чтобы похоронить MathML как слишком трудный способ.

Растягивание скобок

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

[
a b
c d
]
(
a
b
)
{
a
b
}
[
 <polyline points= /> ]<sub>3</sub>
[
 <path d= />          ]<sub>3</sub>
<polyline id="ch" points= />
(
  <path d= >
    <pack host="ch" dot="4" ptr="20">
  </path>
)<sub>3</sub>
<path d= id="ch" />
(
  <polyline points= >
    <pack host="ch" dot="4" ptr="20">
  </polyline>
)<sub>3</sub>

Выделение

Единственной целью выделения текста в любой программе является последующее нажатие клавиш "Ctrl-C" ("Ctrl-Ins"). Предлагаю изменить поведение программ, в частности браузера: выделенный текст (отпущены клавиши клавиатуры или мыши) автоматически копируется в буфер обмена (clipboard).

Таким образом комбинации клавиш "Ctrl-C" и "Ctrl-Ins" больше не являются функциональными.

Переключение фокуса ввода пользователем на то окно в операционной системе, в котором есть ранее выделенный текст, означает автоматическое повторное копирование выделенного текста этого окна в буфер обмена.

Маска в строке адреса

Пусть будет можно использовать знаки "*,?" в строке адреса браузера, и пусть там они обозначают то же самое, что в командой строке в ОС. В ответ на такой адрес браузер генерирует html-страницу, в которой перечисляет все подходящие, но уже посещенные адреса.



Резюме

Html-теги
up, down



Тюрин Дмитрий



Перечень статей   Цветовые обозначения   Choose language


Hosted by uCoz