Page widening

A web browser normally places as many words in a single line as will fit the width of the browser window. However, there are cases where horizontal scrolling is needed. For a large picture, table or diagram this may be worthwhile, but without special measures the rest of the web page is also affected, with long lines that can only be read by cumbersome horizontal scrolling.

Causes of page widening (sometimes called page stretching or just stretching) include:

* a wide image;
* a very long "word", for example Krungthepmahanakornamornratanakosinmahintarayutthayamahadilokphopnopparatrajathaniburifnordromudomrajaniwesmahasatharnamornasdfadfasdfjieutisomtimesiliketoeatspegehhtiphimarnavatarnsathitsakkattiyavisanukamgjsdkkeifeisrasit;
* a long line with the specification that the browser should not break it (for instance, use of the HTML tags <pre> or <nobr>);
* a table with many columns, in particular if columns contain a long word (the minimum width of a column is the width of the longest word in it);
* a table where the HTML specifies a large width.

The author of a web page may have failed to consider that the user:
* may have a lower screen resolution
* may be using a larger font
* may be viewing several pages in more than one window at the same time
* may be using a PDA
* may be using a mobile phone.

All these may cause a wide page requiring horizontal scrolling.

Page widening by trolls

Page widening is done by internet trolls on many message boards and forums, for example, Slashdot. This form of troll causes a web page to widen to a ridiculous width, to the point where one
cannot read the text without constantly scrolling left and right.

The first true page widening was an accident. Someone posted a UNIX directory listing that looked something like this:
:.foo .bar .dir .bin .etc .and .on .and .on .foo .bar .dir .bin .etc .and .on .and .on .foo .bar .dir .bin .etc .and .on .and .on .foo .bar .dir .bin .etc .and .on .and .on .foo .bar .dir .bin .etc .and .on .and .on .foo .bar .dir .bin .etc .and .on .and .on .foo .bar .dir .bin .etc .and .on .and .on .foo .bar .dir .bin .etc .and .on .and .on

A troll by the name of Klerck allegedly used this little trick to make trolls such as:

:.i .like .wide .pages .dont .you .like .wide .pages .and .on .and .on .i .like .wide .pages .dont .you .like .wide .pages .and .on .and .on .i .like .wide .pages .dont .you .like .wide .pages .and .on .and .on .i .like .wide .pages .dont .you .like .wide .pages .and .on .and .on .i .like .wide .pages .dont .you .like .wide .pages .and .on .and .on .i .like .wide .pages .dont .you .like .wide .pages .and .on .and .on .i .like .wide .pages .dont .you .like .wide .pages .and .on .and .on .i

Slashdot implemented a fix for this page widening, which was mostly known for affecting HTML display in Internet Explorer and Netscape browsers, but only after a considerable time had passed. Specifically, Internet Explorer's word-wrap code would not break a line before a word starting with a period and would place all the words on one line and thus widen the page. The then "alternative" browser, Opera, was not affected.

This exploit relies on the fact that, when properly implemented, some characters "prohibit line break before" them, as per the Unicode specification . A fix to this problem also exists for phpBB .

Less than a week later, a new widening troll appeared:

    http://www.everythinghfgfcdoosammgwsnboivvbsczxlzgabc/ooieiabdcdjsvbkeldfogjhiyeeejkagclmieooionoepdk/abcdefmfighyiqxjklmonopqrosoyotuvwxoyqwertyuiov/sdfghjklqewiuznmbjadzmcloeuivivalarevolutionzapaterodflkas/fskdfasiewurznmcvweroiqewrnamdnzcvuowieramnfkas/dfhzuxcihskjrnakjzkjcxbviusayrkajsfzxncvizughdgfghgfhfghfghfghfhfghfghfghfhfghfghfghgfhgfdsfsfasdasduiwqgiudqwugdasjbxjasbxjhabsjdfqiuwedgbwqdasdacdfbhfgjstydjdfghfhdyri


That widener was also fixed, by a filter that automatically inserts a space into postings after a certain number of consecutive characters. This is a source of constant frustration to users who post working URLs or segments of code that are automatically broken when they hit submit.
(However, this filter does not affect the contents of Slashdot's link tags;
because they do not appear on screen, they cannot widen the page.
The filter does not touch them, and unless the target rejects visitors coming from Slashdot, they link properly.)
 
< Prev   Next >