[Mapcss] Making it approachable
Thomas Davie
tom.davie at gmail.com
Mon Feb 7 18:04:43 GMT 2011
On 7 Feb 2011, at 17:51, Richard Fairhurst wrote:
> Some interesting reading today!
>
> Rather than going through stuff point-by-point I'd just make one general observation, which is: simple is good; approachable is good. Ok, that was two general observations.
>
> If a newbie who knows some (web) CSS can write:
>
> way[highway=motorway] { width: 10; color: #0000FF; }
> way[highway=trunk] { width: 8; color: #00FF00; }
> way[highway=primary] { width: 8; color: #FF0000; }
>
> and click "refresh", then see the map appear as they expect, then that's great. We have a convert.
>
> The "implement layers through eval and z-index" stuff is clever and architecturally neat, but doesn't pass the above test. It would be kind of like removing <p>, <ul>, <li> and everything from HTML, simply leaving <div> and <span>. Architecturally beautiful and utterly logical (after all, they can all be specified in CSS), but a PITA to work with.
>
> Similarly for the colour stuff. Having multiply operations and all of that would be great. But it shouldn't be at the cost of rejecting a universally known, though perhaps slightly imperfect, standard.
I don't really see how the layers proposal would change the above example (or any simple example), with a good quality default style sheet (that maps layers into z-indexes nicely). Of note one of the most powerful things about css is that you get to do things like go "see that list thing in the html, I don't want it to be a list". The same thing should be true of MapCSS – it should be possible to take the layers specified in the tags, and entirely rearrange them.
A practical example to justify why this is something we'd want: when selecting ways in an editor it would be useful to make those ways appear on top of un-selected ways, with highlit casings (Potlatch does exactly this in fact). Being able to simply specify
way :selected
{
casing-z-index: eval(100 + prop(casing-z-index));
z-index: eval(100 + prop(casing-z-index));
}
(making an assumption that 100 is higher than any other way).
Thanks
Tom Davie
More information about the Mapcss
mailing list