- From: Kenneth Rohde Christiansen <kenneth.christiansen@gmail.com>
- Date: Sun, 2 Jun 2013 13:16:56 +0200
- To: Simon Sapin <simon.sapin@exyr.org>
- Cc: "Tab Atkins Jr." <jackalmage@gmail.com>, www-style list <www-style@w3.org>
- Message-ID: <CAEC208u+BavU4kCY58aHdpb_FBF1hxc0pTpZz90TN4KJZGmaBg@mail.gmail.com>
Hi, Can you explain to me what you mean with "parse-time declarative macros"? like for instance give an example. In WebKit/Blink the engine knows which media features change as a result of viewport changes and it only reevaluates those when the viewport changes (size, scale/zoom, etc). If the engine knows then invented conditionals change, we could do similar. Kenneth On Sun, Jun 2, 2013 at 7:24 AM, Simon Sapin <simon.sapin@exyr.org> wrote: > Le 01/06/2013 03:07, Tab Atkins Jr. a écrit : > > Recently there was a thread about reducing the duplication in Media >> Queries, which wanted to use Variables. I pointed out that we >> couldn't use CSS Variables as written, but I'd like to pursue lexical >> variables at some point in the future for this kind of thing. >> >> Alex Russell just suggested another approach to me in a private email >> - crack open MQs themselves and let authors plug into that >> infrastructure. Example syntax: >> >> <html> >>> <script> >>> if (window.outerWidth >= 600) >>> document.css.properties["**inventedConditional"] = true; >>> } >>> </script> >>> <style> >>> @media (property("**inventedConditional")) { >>> .facet_sidebar { >>> display: none; >>> } >>> } >>> </style> >>> </html> >>> >> > Hi, > > I like the idea of custom MQs, but the downside of this approach is that > it is not declarative. The example above is very misleading: unlike > existing MQs, this one is not updated when the size of the viewport > changes. The JS code would need to be inside some event handler. > > So this approach has the same kind of performance issues than JS > animations vs. CSS Animations. When this is just a shorter and DRY way to > write a condition that can be expressed with existing MQs, the perf cost > could be greater than the maintenance cost of repetition. > > I think it is worthwhile to have both custom MQs like this (that probably > can’t be made declarative without loosing expressive power) and parse-time > declarative "macros" for MQs to avoid repeating complex expressions. > > -- > Simon Sapin > > -- Kenneth Rohde Christiansen Senior Engineer, WebKit, Qt, EFL Phone +45 4294 9458 / E-mail kenneth at webkit.org ﹆﹆﹆
Received on Sunday, 2 June 2013 11:17:23 UTC