[ List Earliest Comments Only For Pages | Games | Rated Pages | Rated Games | Subjects of Discussion ]
Single Comment

<pre>Fergus Duniho wrote on 2016-03-27 None
The main purpose of the sidebars is to make the content narrower,
because this makes a page easier to read. It also helps contributors
who are designing pages on desktops with wide-screen monitors to design
them in a way that will work on mobile devices, for which extra width is
not even an option. So, yes, they have to go all the way down, and they
should not be hidden unless it is for a page that requires the extra width
and is not intended to work on mobile devices. Using the space for
advertising is a side benefit of having the extra screen space available.
</pre>
OK, that sounds reasonable. The Design Wizard is a rather specialized function, however, occasionally used by people who want to generate HTML code for pasting it into the web page they are designing. I don't think it is imperative that they could do that from a mobile device.
<p>
It would still be nice if you assigned a unique id to the side bars next to the article, and the 'main' HTML element, so that they could be accessed from the JavaScript through getElementById. To restore full width I had do set the display style of the side bars to "none", and the MarginLeft and maxWidth properties of the 'main' element. I now have to reach those elements through getElementsByClassName (for 'leftcol' and 'rightcol') and getElementsByTypeName (for 'div', 'main' and 'article'), which is a pain because they return arrays, out of which you would have to pick the proper element.
<p>
Although what I have now works fine, it is critically dependent on the structure of the page. Somy worry is that at some time in the future, the current code would cease to work because you re-organize the layout in the display scripts, making the article reside in the second 'DIV' element of the page instead of the first, or adding other elements with class 'leftcol'. The system could be made more robust by assigning an id to the elements that need to be affected, which would be kept the same no matter where they go.
<p>
Of course it would be even nicer if all displayed pages defined a JavaScript function FullWidth() by themselves, which would do whatever was needed to make the side bars disappear. Then people that would need the extra space for whatever reason could just call that function, without being dependent on any assumption on the current or future layout of the page. (Which they would depend on if they had to implement this function themselves, as I now did as part of the handler for the 'Design Wizard' button press.
<pre> var adbar = document.getElementsByClassName("leftcol");
adbar[0].style.display = "none";
adbar = document.getElementsByClassName("rightcol");
adbar[0].style.display = "none";
adbar = document.getElementsByTagName("div");
adbar = adbar[0].getElementsByTagName("main");
adbar[0].style.float = "left";
adbar[0].style.marginLeft = "1px";
adbar[0].style.maxWidth = "100%";
adbar = adbar[0].getElementsByTagName("article");
adbar[0].style.float = "left";
</pre>