LINUX.ORG.RU

Открытый ответ-комментарий на статью «Расхожие мифы о Windows и Linux»


0

0

Недавно здесь прошло довольно бурное обсуждение нескольких статей некоего Германа Иванова. Поскольку в обсуждениях на форуме довольно легко теряется нить, я взял на себя труд подвести черту и в краткой форме изложить опровержение целого ряда ошибок и передергиваний автора.

http://www.atmsk.ru/download/win-lin....
http://www.atmsk.ru/download/win-lin2...
http://www.atmsk.ru/download/win-lin3...

Еще раз благодарю за помощь в составлении этих трех документов участников дискуссии.

>>> Начальная страница

★★★★★

Проверено: maxcom

>> С этим согласен целиком и полностью

Вот и все. Потери на оптимизацию (это со стороны JIT) будут - утверждать обратное, значит становиться "торсионщиком", однако эти потери будут весьма незначительны. И то, что Брюс Эккель использует данный конкат - вполне оправдано, учитывая учебный характер эго примеров.

Заметим, что даже объявление строки final без объявления финальными ее составляющих не приведет к созданию "безаппендной" строки. Вопрос в том, как JIT работает с ldc-инструкциями.

Зачем все это нужно? Не знаю, наверное для "A" + i + i + "B" vs. "A" + (i + i) + "B". Здесь константы честно посчитаются javac, без "заталкивания".

NikS.

anonymous
()

Хей, вторую медальку взял. было 500, стало 600

Pugilist
()

>> ты согласен с тем, что "aaa" + i + "asdasd" + "asdasdasd" медленнее чем append("aaa").append(i).append("asdasd").append("asdasd
 asd"), 

Так:

class Test4
{
   public static void main(String[] args)
   {
     int i = 10;
     String s1 = "a" + i + "b" + "c";
     String s2 = 
     new StringBuffer().
       append("a").append(i).append("b").append("c").toSt
ring();
   }
}

?

Категорически несогласен!

NikS.

anonymous
()

Вот черт. Облажался.

Должно быть

"aaa" + i + "asdasd" + "asdasdasd" медленнее чем append("aaa").append(i).append("asdasdasdasdasd")

Речь идет о том, что в случае финального i и вообще его отсуствии получится строка aaaasdsdasdasdasd. Что есть правильно. Но в случае его наличия и не финальности будет append("aaa").append(i). append("asdasd").append("asdasdasd), а не append("aaa").append(i). append("asdasdasdasdasd"). Это совсем не очевидно.

И писать постоянно плюс не есть хорошо, особенно в случае String ttt = "asd"; String zzzz = ttt + i + "asdasd". (имхо, это более реальный случай программмирования, чем просто выдача сервлетом строки). А так делают и сплошь и рядом

Pugilist
()
Ответ на: комментарий от Pugilist

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


class Test4
{
   public static void main(String[] args)
   {
     int i = 10;
     String s1 = "a" + i + "b" + "c";
     String s2 = 
     new StringBuffer().
       append("a").append(i).append("b").append("c").toSt
ring();
   }
}

и проведу опыт, получив:

Compiled from Test4.java
class Test4 extends java.lang.Object {
    Test4();
    public static void main(java.lang.String[]);
}

Method Test4()
   0 aload_0
   1 invokespecial #1 <Method java.lang.Object()>
4 return

Method void main(java.lang.String[])
   0 bipush 10
   2 istore_1
   3 new #2 <Class java.lang.StringBuffer>
6 dup
   7 invokespecial #3 <Method java.lang.StringBuffer()>
10 ldc #4 <String "a">
12 invokevirtual #5 <Method java.lang.StringBuffer append(java.lang.String)>
15 iload_1
  16 invokevirtual #6 <Method java.lang.StringBuffer append(int)>
19 ldc #7 <String "b">
21 invokevirtual #5 <Method java.lang.StringBuffer append(java.lang.String)>
24 ldc #8 <String "c">
26 invokevirtual #5 <Method java.lang.StringBuffer append(java.lang.String)>
29 invokevirtual #9 <Method java.lang.String toString()>
32 astore_2
  33 new #2 <Class java.lang.StringBuffer>
36 dup
  37 invokespecial #3 <Method java.lang.StringBuffer()>
40 ldc #4 <String "a">
42 invokevirtual #5 <Method java.lang.StringBuffer append(java.lang.String)>
45 iload_1
  46 invokevirtual #6 <Method java.lang.StringBuffer append(int)>
49 ldc #7 <String "b">
51 invokevirtual #5 <Method java.lang.StringBuffer append(java.lang.String)>
54 ldc #8 <String "c">
56 invokevirtual #5 <Method java.lang.StringBuffer append(java.lang.String)>
59 invokevirtual #9 <Method java.lang.String toString()>
62 astore_3
  63 return

Далее я буду рассматривать идентичность первого и второго случая.

Просто заниматься метафизикой и умозрительствовать я не буду, 
ибо я не гуманитарий. Вот почему я ставлю знак равенства между кульхакерами и торсионщиками - они метафизики!
Я всегда полаггаюсь только на 
эмперические знания, а потом уже занимаюсь анализом и синтезом этих 
знаний.

Что же касается "a" + "b" склеить в "ab" (даже теряя удобочитаемость),
то это можно сделать в gawk или написать что нибудь свое на lex/yacc или даже на самой JDK (где есть встроенные классы для создания парсеров)

NikS.
.


anonymous
()

Действительно важно - по поводу статей!!!

Чуть не забыл!

На своей страничке http://javasphere.hotmail.ru выложил экзамплы по WINGs. Связную статью налабаю за выходные. Юзайте и критикуйте! (Но не как "Германа"!;))

PS. IMHO, нужно Linux-просвещение. Массовое! Иначе, действительно, маркетинговая машина мелкософта, не брезгающая ничем, раздавит как каток.

PS2. Если есть в Москве Linux клуб или просто где собираются линуксоиды за пивком - дайте знать.

NikS
()

2Pugilist:

Вот и все решение для "a"  + i + "b" + "c" ;)))

class Test2 
{
   public static void main(String[] args)
   {
     String ttt;

     long ss5 = System.currentTimeMillis();
     for(long i = 0; i < 1000000; i++)
       ttt = "<b>Field" + i + "</b> <input type=\"text\"  size=\"20\" name=\"Field" + i + 
          "\" value=\"Value" + i + "\"><br>";
     long zz5 = System.currentTimeMillis();
     System.out.println(zz5-ss5);
	   
     long ss = System.currentTimeMillis();
     for(long i = 0; i < 1000000; i++)
       ttt = "<b>Field" + i + ("</b> " +
          "<input type=\"text\""+
          " size=\"20\" name=\"Field") + i + 
          "\" value=\"Value" + i + "\"><br>";
     long zz = System.currentTimeMillis();
     System.out.println(zz-ss);
   }
}

Как много делают два маленьких значка, которые не нарушают даже
_функциональности_ примера!

Сравнивайте теперь скорость, декомпилируйте javap и jad'ом.;)

Этот hint даю бесплатно! Недаюсь, что рано или поздно
(раньше лучше) Вы перейдете на Linux! ;))

NikS.

anonymous
()

Хорошее решение.

Линукс... пускай сначала разберутся с libc-hell. И АА научатся вЫключать :). И графику побыстрей сделают. А в качестве сервера он и сейчас работает :)

Pugilist
()

Ребят, в теме сообщения слово Java есть?
IMHO нет.
Я бы вам рекомендовал в talks или development создать свое сообщение и там
изощряться в программировании (я бы так сделал на вашем месте).
Во-первых, это было бы правильнее, во-вторых, любой заинтересованный
человек мог бы легко вас найти.

Чего с Германом делать будем?
Это засада какая-то.
Может, все-таки, раздел статьи Maxicom сделает.
Можно было бы написать статью, дня за три по теме нее из флейма
выцепить здравые зерна, поправить и - вуаля. Ready to work, my lord.
:)

jackill ★★★★★
()

Есть смысл?
Имхо надо брать более здравые точки отсчета, нежели Герман.

AVL2 ★★★★★
() автор топика
Ответ на: комментарий от AVL2

>Имхо надо брать более здравые точки отсчета, нежели Герман.

Герман несет полную чушь. А мог бы хотя-бы грамотно защищать СВОЮ песочницу. Вообще, он чем-то напоминает свинью - зарылся в кучу собственного дерьма и счастлив. Почиститься желания не испытывает, а все попытки перевести его в новый свинарник встречает в штыки. Такую энергию, да в мирное русло....

Авель же - другая крайность. Ломится грудью на баррикады, размахивает красным флагом. Имхо, глупо пытаться кормить упертого идиота пропагандистскими соплями.

Finder
()

Там очередные шедевры есть (дал бы ссылку, да не знаю, как это
из-под линкса сделать) в новых статьях:
1. Разгон процессоров типа celeron 333, 366 с помощью
шлифования поверхности :) Я был в шоке, когда узнал, что паста
совсем не нужна.
(У самого до сих пор такой проц стоит, разогнанный, из "гонимой" серии).
2. Установка win 98 (не рискнул чел XP ставить или linux :)
Черезжопное создание загрузочной дискеты (на хрена - не ясно).
Тюнинга виндов никакого нет. Так что чел не рубит даже в винде.

jackill ★★★★★
()

2 jackill

>линкса

Какого? Который lynx или который links?

Ikonta_521
()

>> в теме сообщения слово Java

"Герман Иванов" явно играет на публику. "Клин вышибается клином".:-) (спора без эмоций не бывает, но мои эмоции тщательно продуманы;-)))

На самом деле сейчас очень важно показать, что связка Linux + Java является намного лучшим сервером приложений, нежели "Longhorn". Некоторые заказчики, в том числе крупные заказчики в России (по моему опыту) весьма тщательно присматриваются к подобным решениям серверов приложений, так что мы увидим еще много некорретных маркетинговых приемов от мелкомягких.

Важен еще чисто методологический аспект: мелкософт играет на _уверовании_ в своих поделках, а не на _эмпирических_ фактах.

NikS.

anonymous
()

а JIT на Linux нормально работает? я слышал, есть проблемы...

anonymous
()

2 NikS

> PS. IMHO, нужно Linux-просвещение. Массовое! Иначе, действительно,
> маркетинговая машина мелкософта, не брезгающая ничем, раздавит
> как каток.

загляни плиз в соседнюю тему в топе - я там подобрал последние события. по факту - M$ в настоящее время в гигантской заднице. Полная дезориентация, как дальше двигать винды и за какие деньги - непонятно.

ну а против маркетинга M$ - сегодня маркетинг ВСЕХ крупных производителей с дирижером типа IBM за Linux. Пусть M$ побарахтаются, засекай время :)))

что касается "Linux-просвещения" - России это нужно вдвойне, поскольку в технологии IT и IT-бизнесе отстала почти навсегда. Linux - это шанс. и во-вторых - слишком любят нагибаться под любую "сильную" или "правильную" руку .. нужно учиться думать самостоятельно, а для этого нужно владеть технологией.

coffee_break
()

>> а JIT на Linux нормально работает? я слышал, есть проблемы...

Иногда они случаются (хотя я только один раз это видел в программе с >500 тредами;)). Тут надо попробовать поиграться с -X... параметрами.

PS. Кстати, я тут несколько месяцев назад жаловался, что Саны не давали сорцы для СНГ. Скачал 1.4.1 сегодня!;-) Понимают, конкуренция, однако...

NikS
()

>Авель же - другая крайность. Ломится грудью на баррикады, размахивает
>красным флагом. Имхо, глупо пытаться кормить упертого идиота

я просто _один раз_ отметил те глупости, которые человек не видевший линукса вполне может принять за истину.
Писал я не для Германа, а для его читателей. Если бы я хотел вступить с ним в спор - пошел бы на сайт газеты и там развернулся.

>пропагандистскими соплями.

Насчет соплей - это вопрос личного восприятия.

AVL2 ★★★★★
() автор топика

>>>> а JIT на Linux нормально работает? я слышал, есть проблемы...

>>Иногда они случаются (хотя я только один раз это видел в программе с >500 тредами;)). Тут надо попробовать поиграться с -X... параметрами.

насколько иногда?

anonymous
()
Ответ на: комментарий от NikS

>Иногда они случаются (хотя я только один раз это видел в программе с >500 тредами;))

У меня проблемы на линуксе случаются в программах с существенно меньшим количеством трэдов. Правда, мне было трудно понять, с чем действительно они связаны -- в _любом_ коде, использующем JNI, JVM, запущенная в режимах -client или -server, валится на первом же dynamic_сast в С++ коде, в -classic работает нормально. Компиляторы С++ -- KAI или Intel C++ шестой версии, с gcc 2.95.x все работало нормально. Мы имели по этому поводу длинную дискуссию с интелом, но сделать ничего конкретного они в итоге не смогли. Поэтому под линуксом приходится оставаться под JDK 1.3.1 от Sun, поскольку в 1.4.x classic-mode выкинули. Под windows, естественно, все работает.

AC
()

А именно, следующий код:
================================
//file c.cpp
#include <iostream>
#include <jni.h>

class X {
public:
virtual void f() {std::cout << "i:" << i << std::endl;}
private:
int i;
};

class XX : public X {
public:
virtual void f() {X::f();std::cout << "ii:" << ii << std::endl;}
private:
int ii;
};

extern "C"
JNIEXPORT void JNICALL
Java_client_ni_1call_1dc(JNIEnv *jeEnv, jobject jO)
{
X* px=new XX;
std::cout << "before dynamic cast" << std::endl;
XX* pxx=dynamic_cast<XX*>(px); //(!!!!!) здесь падает
if(!pxx) {
     std::cout << "dynamic cast failed" << std::endl;
} else {
     std::cout << "dynamic cast ok!" << std::endl;
}
std::cout << "after dynamic cast" << std::endl;
}

=================================================================
//file client.java
public class client {
static {
     System.loadLibrary("tdc");
}

public static void main(String[] args) {
     System.out.println("client::calling native...");

     client c=new client();
     c.ni_call_dc();

     System.out.println("client::native called!");
}

private native void ni_call_dc();
}
==================================================================

Падает на dynamic_cast. 
Принимаются все комментарии.

AC
()

>> gcc 2.95.x все работало нормально.

Рекомендации самого Сана:

http://java.sun.com/products/jdk/faq/jni-j2sdk-faq.html

Про JIT & трэды - точно не знаю, умозрительными вещами заниматься не хочу, если есть у кого какая ссылка по подробному освещению этой проблемы, pls, киньте. Практически помогают (IBM JDK) -Xoss... -Xss... .

NikS
()

>PS. Кстати, я тут несколько месяцев назад жаловался, что Саны не давали
>сорцы для СНГ. Скачал 1.4.1 сегодня!;-) Понимают, конкуренция, однако...

Я правильно понял, что теперь в СНГ можно официально собирать jdk своим компилятором? или это просто одному СНГовскому индивиду ссылку на исходники дали?


AVL2 ★★★★★
() автор топика
Ответ на: комментарий от NikS

>Практически помогают (IBM JDK) -Xoss... -Xss... .

Мне, к сожалению, это практически не помогает.

AC
()

AVL2, ответь в топике про гноме, плз

Pugilist
()
Ответ на: комментарий от NikS

> WЫndoZe'95 и cli jmp 100 не сработало в OS/2.

У меня и то и другое завешивало. Правда, в OS/2 Warp 3. Насчет публиковаться -- приглашаю. Подробности -- письмом.

eugine_kosenko ★★★
()
Ответ на: комментарий от NikS

> NB. Предложение maxcom'у - сделать на _видном_ месте сайта рубрику > "статьи наших посетителей сайта".

У меня тоже кое-что есть -- сравнение скорострельности Berkeley DB и PostgreSQL. Было опубликовано в киевском журнале "Компьютеры+программы", в сети еще один вариант. Недавно я развил тему (сравнил BDB и MySQL), просто не дойдут никак руки забросить все это в сеть.

eugine_kosenko ★★★
()

4AVL2: Притом эта автоматизаторская соска таки вые...лась на все
твои коментарии и нихрена не поняла, ни единого слова.
Даже gpl.

jackill ★★★★★
()

---quote--- "...Выбирая windows, программист за немалые деньги получает довольно удобную для создания простых проектов среду и ... все" ---end---

Бедные авторы AutoCAD, ProENGINEER, Maya... Они и не знали, какую среду они выбрали для своих простых программ. Или какой четверг. Cо смеху чуть не помер когда прочитал...

anonymous
()

---quote--- "...Для windows серверов, напротив, uptime не превышает недели." ---end---

http://uptime.netcraft.com/up/graph/?mode_u=off&mode_w=on&site=www.de...

no comments... умение отрицать очевидное вкупе с неумением пользоваться NetCraft -- это сильнейшая, непробиваемая комбинация...

anonymous
()

Это ерунда.
То что Герман невразумляемый, было видно сразу по его ответам в форуме.
Мне хватило просмотра его "доказательства", что ядерный модуль нвидии, это и есть ядро...

Необходимость лечения Германа - проблема надуманная.
Есть реальная проблема - информированность простой пользовательской общественности относительно возможностей и принципов работы с линуксом оставляет желать много лучшего.

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

AVL2 ★★★★★
() автор топика

>Бедные авторы AutoCAD, ProENGINEER, Maya...
ProENGINEER наш конкурент. одного этого достаточно, чтобы назвать его жалким. ;)

Остальные родились под юниксом и были портированы под виндовс. Автокад под виндовс оставляет очень "теплые" ощущения. Знаю не понаслышке.

>Они и не знали, какую среду они выбрали для своих простых программ.

Они выбрали ту среду, которая доминирует у потенциального покупателя. Был бы дос - был бы автокад 2002 для дос.

AVL2 ★★★★★
() автор топика

>no comments... умение отрицать очевидное вкупе с неумением пользоваться
>NetCraft -- это сильнейшая, непробиваемая комбинация...

так comments или no comments?

Табличка мировых лидеров ограничивается в районе 133 дней, а мой сраненький серверишко год простоял, пока ups не сдох...
Таки дела, брат...

AVL2 ★★★★★
() автор топика

Д-а-а, господа, комментарии всего происходящего излишни. Обращаюсь к любителям Linux: Не надоело вам, уважаемые, "метать бисер перед свиньями"? Если вышеупомянутым нравится замечательная продукция MS - пусть их. У них мозги устроены по-другому. Пользуют OS для домохозяек, а домохозяйки преимущественно женщины со всеми их достоинствами и НЕДОСТАТКАМИ (кстати, что-то на LORе исчезающе мало женщин или вообще нет. Antichrist распугал своей нецензурщиной наверное). Ещё раз повторяю: Windows - OS для ДОМОХОЗЯЕК. Так что, уважаемые, будьте с девушками корректны: они вам "Линух - говно!!!", а вы им анекдот неприличный с известным поручиком - обхохочутся. Не мне вас учить...

Обожателям MS-Food: Уважаемые ДОМОХОЗЯЙКИ! Вы пришли на L I N U X.org.ru! Зачем?! ОКНА смотреть надоело? Осточертел Гейтс-Нагиев? Захотелось острых ощущений? Пожал-те на улицу (Тверскую) - там ещё и денег дадут, а может физиономию отполируют.Здесь ни денег, ни пива - одно нервное расстройство в спорах. Живите спокойно, пейте чай с мятой, больше гуляйте на свежем воздухе, и никогда, никогда не ходите на LOR!

Администрации linux.org.ru: Господа! Предлагаю вам не публиковать безграмотные статьи провокационного характера, будь то статьи Германа Иванова или "наши ответы Чемберлену", дабы посетители не затевали грязных и бестолковых склок с соревнованиями типа "у кого стоИт лучше". Уже просто тошнит от этих IT-специалистов экстра-класса (родного языка не знают, а принимают друг у друга квалификационные экзамены :-((())). Да, и прекратите матершину. Здесь приличное заведение - не пивная. Или пивная? Тогда где вышибалы?

P.S. Прошу прощения у тех, кому показался резок в определениях. Terrible SORRY!

Александр.

anonymous
()

Интересно было седня наблюдать за биржей. После того, как впервые в истории M$ раскошелился заплатить дивиденды акционерам (плюс еще ряд неприятностей, типа необходимости открыть коды) - MSFT шлепнулось вниз на 7%. M$ - чемпион сегодняшних падений - слил 21 млрд. капитализации, лично гейтс уменьшил стоимость лично своего капитала на 5 млрд. баков.

В качестве прикола - при такой жизни денег хватит на месяц максимум (если списывать по убывающей экспоненте :)))

Ну а если серьезно - просто смешно видеть статьи про преймущества виндов, когда счет уже на такие деньги идет.

Open Source и Linux в частности это массовая технология сегодняшнего и завтрашнего дня. Если где-то в линуксах и есть шероховатости - то это не без вины M$ (15 лет людям нормальной жизни не давали). С другой стороны - у линуксов есть мощная поддержка от пользователей, разработчиков и крупных корпораций. Это значит только одно - все проблемы будут решены. Винды таких кредитов не имеют.

coffee_break
()

А разве после выплат дивидендов акции не должны падать на сумму этих выплат?

я просто вообще ничего про это не знаю...

AVL2 ★★★★★
() автор топика

2 AVL2

> после выплат дивидендов ..

выплата дивидендов сотавит 16 центов на акцию, но стоимость акции упала примерно на 4 бакса (-7%).

самой выплаты еще не было, вчера сделано только объявление .. но система отношения рынка к цене акции совсем другая.

на самом деле акции MSFT в данном случае имеют превышение балансовой стоимости (Price/Book) в 5.31 раза, т.е. реальная балансовая стоимость акции не $51.46 , а $9.69. Тот кто покупает акцию - тот сегодня переплачивает относительно формальной ликвидационной стоимости:

$51.46 - 9.69 = $41.77

в принципе, это нормальное явление для сильной экономики - так к примеру IBM этот коэффициент 6.53, у DELL - 14.21, у Apple (AAPL) - 1.28, Red Hat (RHAT) - 3.13.

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

Другая сторона монеты - как только инвесторы чуствуют опасность - они с теми же коэффициентами или большими усиливают свои отрицательные эмоции и обрушивают акции.

P.S. есть даже такой прием, когда инвесторы охотятся за фирмами, которые имеют низкий P/B и начинают перспективный проект. При таком условии - из приведенных компаний самая перспективная - Apple (500% роста). RHAT тоже имеет потенциал.

coffee_break
()

2 AVL2

да, вот еще обязательно надо добавить ...

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

если нет возможности новых рынков и увеличения прибыли - курс акций неизбежно начнет падать из-за высоких коэффициентов переоценки.

coffee_break
()

Хм. А я слышал когда объявляют, что выплатят хоть что то - цена акции по мере приближения выплат растет. :)
Хорошо, что у меня нет акций МС.
Хотя конкретно для Билли имея 60-80 млрд Угандийских Енотов потерять всего 4 - не самое плохое в жизни...

AVL2 ★★★★★
() автор топика

Короче, выносим "Герману Иванову" диагноз - "гуманитарнщина".

Я как и обещал свою первую часть статьи по Window Maker WINGs выложил на своей страничке

http://javasphere.hotmail.ru

Естественно, в формате OpenOffice 1.01.

Критикуйте!!! Если есть фанаты Window Maker - то, pls, тиражируйте мой скромный материал на своих сайтах.

NikS
()
Ответ на: комментарий от NikS

>Естественно, в формате OpenOffice 1.01.

Неплохо было бы и в формате pdf.

AC
()

> ..IE 6 is 100% standards compliant with DOM Level 1 Core & HTML and
> CSS1 support...". А личное наблюдение такое: ни разу не видел
> некорректного отображения страницы в IE.

А что такое метод Цилика и для чего оный предназначен? :)

А что такое position: fixed и как оно работает в IE? А что такое minwidth и как оно работает в IE? :) А как у нас дела с альфа-каналом в png в IE? Я имею в виду IE 6, разумеется. :)

CybOrc
()

Вдогонку:
Страница, адрес которой привожу ниже, некорректо показывается IE 6. Даже Опера (!) показывает правильнее.

http://www.w3.org/Style/CSS/

CybOrc
()

У меня полупрозрачный png, сконвертированный в xat-io показывалсяя нормально в ie5 и выше показывал нормально. Даже, 4, вроде. А вот для NN 4.xx - это было выше его сил. 6.xx не пробовал.

anonymous
()

>>Даже Опера (!) показывает правильнее.
а вот не понимаю что значит даже ?????????
если у оперы глюки в отображении и были то уже в 6.05 они устранены.
и стандартов они своих не выдумывают и никому не навязывают !!

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.