Last modified: 2011-06-07 06:05:15 UTC

Wikimedia Bugzilla is closed!

Wikimedia migrated from Bugzilla to Phabricator. Bug reports are handled in Wikimedia Phabricator.
This static website is read-only and for historical purposes. It is not possible to log in and except for displaying bug reports and their history, links might be broken. See T31256, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 29256 - text on wide screen is hard to read : need columns
text on wide screen is hard to read : need columns
Status: RESOLVED WONTFIX
Product: MediaWiki
Classification: Unclassified
Parser (Other open bugs)
unspecified
All All
: Normal enhancement (vote)
: ---
Assigned To: Nobody - You can work on this!
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2011-06-03 08:39 UTC by Antoine "hashar" Musso (WMF)
Modified: 2011-06-07 06:05 UTC (History)
2 users (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Attachments
basic HTML layout presenting the two proposals (7.30 KB, text/html)
2011-06-03 09:12 UTC, Antoine "hashar" Musso (WMF)
Details

Description Antoine "hashar" Musso (WMF) 2011-06-03 08:39:09 UTC
This bug follow a discussion with Santosh during the Berlin 2011 hackaton.

On a wide screen, the text is a bit hard to read. Newspapers use multiple columns layout to make it easier for the reader. Technically, we could apply a two columns layout (with CSS3 'column-count') whenever the screen is too wide.

Currently, text belonging to a section is not wrapped in an element which makes it hard to interact with the text on a per section basis. The enhancement can be also be the root for other enhancements:
- hiding section text by default with a button to make it appears
- only show the first section and add previous / next link to read subsequent sections (much like turning page of a book).

Anyway, given the wikitext:
 == head 1 ==
 section 1 text
 section 1 more text
 === subhead 1.1 ===
 sub section text
 == head 2 ==
 section 2 text

We currently generate HTML which roughly looks like:
 <h2>head1</h2>
 <p>section 1 text</p>
 <p>section 1 more text</p>
 <h3> subhead 1.1 <h3>
 <p>sub section text</p>
 <h2> head 2 </h2>
 <p>section 2 text</p>

The idea would be to wrap all the text which appears between two headers.

First proposal terminate the section regardless of the heading level:

 <h2>head1</h2>
 <div id="???" class="mw-text-section">
   <p>section 1 text</p>
   <p>section 1 more text</p>
 </div>
 <h3> subhead 1.1 <h3>
 <div id="???" class="mw-text-section">
   <p>sub section text</p>
 </div>
 <h2> head 2 </h2>
 <div id="???" class="mw-text-section">
   <p>section 2 text</p>
 </div>

This is suitable to apply a 2 column layout with the following CSS:

 .mw-text-section {
   column-count: 2;
   -moz-column-count: 2;
   -webkit-column-count: 2;
 }

Each section could be layed out like a newspaper page, but any new heading start a new 2 columns section.


Second proposal, wrap sub sections too and keep track of the nesting level:

 <h2>head1</h2>
 <div id="???" class="mw-text-section-1">
   <div id="???" class="mw-text-section-2">
     <p>section 1 text</p>
     <p>section 1 more text</p>
   </div>
   <h3> subhead 1.1 <h3>
   <div id="???" class="mw-text-section-2">
     <p>sub section text</p>
   </div>  <!-- end of subsection 1.1 -->
 </div>  <!-- end of section1 -->
 <h2> head 2 </h2>
 <div id="???" class="mw-text-section-1">
   <p>section 2 text</p>
 </div>

By using mw-text-section-1, each <h2> section can still be seen as a page:

.mw-text-section-1 {
   column-count: 2;
   -moz-column-count: 2;
   -webkit-column-count: 2;
 }

The <h3> sections would be subtitle inside the column layout.


TODO : submit layout examples
Comment 1 Antoine "hashar" Musso (WMF) 2011-06-03 09:12:05 UTC
Created attachment 8613 [details]
basic HTML layout presenting the two proposals
Comment 2 Brion Vibber 2011-06-07 00:19:37 UTC
Multiple columns are just.... well, horrible. :) They interfere with:

* reading
* scrolling
* selecting
* finding things
* formatting things consistently
* anything that has long URLs, long words, math equations, large images

People with large screens also tend to use their large screens for multiple windows; where they don't already choose to deliberately, generally the OS or browser should start providing better tiled interfaces in the future.
Comment 3 Antoine "hashar" Musso (WMF) 2011-06-07 06:05:15 UTC
Column are used to make the reader experience actually better. At the end of a long line, your eye has trouble finding the beginning for the next line.  Making lines shorter solve the issue. 

Scrolling, selecting are different user experience which, I agree, might appear to be awkward at first glance. This is just about getting the habit to use the layout.  Finding is just about hitting ^F in most browsers :b

I am sure we can find a CSS solution to wrap long URLs and words. Large images (and math) is an other story though :-)

Note You need to log in before you can comment on or make changes to this bug.


Navigation
Links