Bug 69654
Ludovic Dubost
ludovic at pobox.com
Mon Dec 8 15:56:14 UTC 2003
Christian Robottom Reis wrote:
>On Mon, Dec 08, 2003 at 01:41:12PM +0100, Ludovic Dubost wrote:
>
>
>>- Especially being able to have the actions in a menu bar at the top of
>>a page is more similar with the usual experience non-tech users have
>>with computer applications.
>>
>>
>
>This is a really important point (though rather orthogonal to the CSS
>issue here) -- our footer is a usability problem for most of our pages,
>since the user ends up having to scroll down (many times guessing he
>needs to scroll down) to [find out how to] navigate through the site.
>
>However, I need to stay focused here if we want the initial CSS
>framework to land -- when it's in, we can work on the UI improvements.
>
>
>
That's true.. we just need to make sure the CSS structure will allow to
do it.. So we need to integrate a div space to receive these actions..
It could be the same as the one for the Next/Prev links in the buglist..
I called it 'navheader'..
>>- Changing the look to use CSS buttons not only allows to change it more
>>easily but gives a 'sexy' look that is quite important to easy the
>>adoption of the tool to a resisting non-tech audience..
>>
>>
>
>You'll find that many people will be reluctant to rely on images for
>buttons as "menu items", but that if a decent CSS structure is devised
>it should be easy to add those to a site CSS file.
>
>
>
It is true.. However in the design I used, it only needs 2 very small
images for all the buttons.. The power of CSS make them look like real
buttons..
So it doesn't have a huge impact on speed.. Also it should be possible
to have a correct interface with colors of the images are not loaded..
As you say a decent CSS structure will allow to choose..
>
> - Also using a standard naming for the 'standard' and 'advanced' DIV
>
>>>allows to apply the same CSS/JS code. Creating a separate div for the
>>>header of each section was a way to apply a style.
>>>
>>><div id="editadvtitle"><h1>Advanced</h1></div>
>>><div id="editadv">
>>><table>... with form elements</table>
>>></div>
>>><div>
>>>
>>>
>>
>>I didn't understand your point here.
>>
>>
>>
> I think my example was not clear.. My point is to use the same names
> for things that have a good chance of looking the same accross pages.
> For example:
> -> of course the banner; the footer
> -> the actions for bug views or the next/prev links in bug list
> -> a section with advance fields,
>
>
>
>
>>> - The footer is at the bottom of the page. The only way to get it back
>>>at the top is absolute positioning. So float positioning is kind of
>>>forbidden if you want to keep the footer at the bottom in non CSS mode.
>>>
>>>
>>
>>This could be param-configurable, or we could just move the footer
>>content to the top of the page. Again, this is a larger UI change that
>>should happen later..
>>
>>
>>
> Param configurable would be great.. This would improve the UI
> performance when you want to show the links at the top of the page.
>
>>> - I first used <li> for each action, search query or admin menu item.
>>>But in fact there is a neat solution to keep the '|' as separators so
>>>that the no-style view looks like it does in the current footer. Like this:
>>>
>>>
>>
>>I think that <li> is really the way to go for the top-level actions,
>>though, and we might be able to tolerate some visual changes to allow
>>this.
>>
>>
>>
> I thought it in the beginning to since the <li> reprensents lists and
> that it makes sense for menues to be lists..
> However when I saw the result without style sheets I really didn't
> like the result.. For TV terminals or PDA it is true that you will see
> the items but it won't be as nice as it is now.. The following article
> (sorry in French: http://openweb.eu.org/articles/initiation_display/)
> showed the tric to have a better accessibility using the | as it is in
> bugzilla now..
>
> With the trick you get the same benefit you get with the <li> but keep
> the current way of presenting.. I don't see any reason to not do it
> this way.
>
>
>
As an example here is the current div structure I'm using which allows
quite well to customize:
Here is the div structure I'm using in my template which allows to
customize quite well the interface to my needs..
(it only shows the divs, not what is inside)..
--> For the banner
<div id="logo">
</div>
<div id="bzversion">
</div>
<div id="title">
</div>
--> Content
<div id="content">
--> Navigation Header (actions: Edit/Attach/Show Dependency Tree in Bug
view, Next/Prev in buglist)
--> The navheader name is used to position it always at the same place
--> then the others divs are positioned relatively to the main one
<div id="navheader">
<div id="nav">
<div id="nav_main">
</div>
<div id="nav_links">
</div>
<div id="nav_new">
</div>
</div>
</div>
--> Bug View
--> The is the div structure with a template where there is a read-only
mode for bugs and an edit mode switchable using a button at the top.
<br>
<div id="show_view">
<div id="viewmaintitle"><h1>Summary</h1></div>
<div id="viewmain">
</div>
<div id="viewadvtitle"><h1>Advanced</h1></div>
<div id="viewadv">
</div>
</div>
<div id="show_edit">
<div id="editmaintitle"><h1>Summary</h1></div>
<div id="editmain">
</div>
<div id="editadvtitle"><h1>Advanced</h1></div>
<div id="editadv">
</div>
<div id="editknobtitle"><h1>Actions</h1></div>
<div id="editknob">
</div>
</div>
<div id="show_comments">
<div id="commentstitle"><h1>Comments
</div>
<div id="commentlist">
<div>
</div>
</div>
</div>
--> Navigation footer (repeats the action unless you hide them using CSS)
<div id="navfooter">
<div id="nav">
<div id="nav_main">
</div>
<div id="nav_links">
</div>
<div id="nav_new">
</div>
</div>
</div>
--> end of content
</div>
--> Footer: the javascript here allows to show/hide the drop down menu..
A default implementation would do nothing..
--> Having separate divs for the title and the items themselves allows
to make a button at one place and show the list of items at another place..
--> (for example show/hide the saved queries at the bottom from a button
at the top)
<div id="footer">
<div id="actionstitle"><h2><a onclick="switchActions(); return
false;" href="">Actions</a></h2></div>
<div id="actions">
</div>
<div id="admintitle"><h2><a onclick="switchAdmin(); return false;"
href="">Admin</a></h2></div>
<div id="admin">
<div id="adminlogout"><a
href="http://bzdev.xpertnet.biz/bzdemo/relogin.cgi">Log out <span>ludovic at xpertnet.biz</span></a></div>
<div id="queriestitle"><h2><a onclick="return switchQueryMenu()"
href="">Searches</a></h2></div>
<div id="queries">
</div>
</div>
Ludovic
More information about the developers
mailing list