W3C home > Mailing lists > Public > www-style@w3.org > July 2007

properties 'base' and 'offset'

From: Dmitry Turin <html6css4@gmail.com>
Date: Fri, 13 Jul 2007 08:21:03 +0300
Message-ID: <1956665271.20070713082103@gmail.com>
To: www-style@w3.org

There are two variants of addressing:
about absolute, constant basis (which is address of fixed directory) and
about relative, float basis (which is address of current, loaded document).

---relative basis
Let we have documents on one site, locations of which are specified in example below,
and let documents have different links (they are also specified in example)
  /path/x1.htm                     <a href="./m/n/x2.htm">
  /path/m/n/x2.htm                 <a href="../../x1.htm">
Imagine, that we move part of site to other server,
and we have the following
  site1.com/path1/x1.htm           <a href="./m/n/x2.htm">
  site2.com/path2/m/n/x2.htm       <a href="../../x1.htm">
Traditional tag BASE and technology CURIE are not proper, because
(1.1) they use absolute basis, but we need relative basis;
(1.2) it's more comfortable to change basis in all documents at once in css-file,
than to edit tag HTML in mass of documents.
In addition to that, CURIE is not suitable, because
(1.3) it creates so much basis-es (attributes of tag HTML),
how many directories project uses -
at the same time, we need only so much, to how many parts project is divided
(that is far less number of directories).

Thus i offer to enter new property, which will correct path of link, e.g.


.partB-of-site {                              /*** for site1.com ***/
  offset: site1.com/path1 site2.com/path2;
}
<!- document is site1.com/path1/x1.htm ->
<a class="partA-of-site" href="./y1.htm">     <!- to site1.com/path1/y1.htm ->
<a class="partB-of-site" href="./m/n/x2.htm"> <!- to site2.com/path2/m/n/x2.htm ->


.partA-of-site {                              /*** for site2.com ***/
  offset: site2.com/path2 site1.com/path1;
}
<!- document is in site2.com/path2/m/n/x2.htm ->
<a class="partA-of-site" href="../../x1.htm"> <!- to site1.com/path1/x1.htm ->
<a class="partB-of-site" href="./y2.htm">     <!- to site2.com/path2/m/n/y2.htm ->


Links can point into parent's directories, specified in 'offset',
e.g. can use displacement like "../../.." for example above.

It's possible to emulate pure CURIE so
.z {
  offset:  ./   company.org/dir/dir;
}

---absolute basis
Case, when we refer about fixed directory, is usually store of pictures
(which can be on separate file-server).
It's more comfortable to change basis in all documents at once in css-file,
than to have deal with tag HTML in many documents.
Therefore i offer to use property 'base' instead of tag BASE.

img {
  base:  other.net/folder/folder;
}

<!- in one document ->
<img src="k/l/pic.gif>         <!- will be understand as  other.net/folder/folder/k/l/pic.gif ->

<!- in another document ->
<img src="k/p/fig.gif>         <!- will be understand as  other.net/folder/folder/k/p/fig.gif ->


Dmitry Turin
HTML6     (6.1.2)  http://html60.chat.ru
SQL4      (4.1.2)  http://sql40.chat.ru
Unicode2  (2.0.0)  http://unicode2.chat.ru
Computer2 (2.0.3)  http://computer20.chat.ru
Received on Friday, 13 July 2007 12:54:19 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 27 April 2009 13:54:51 GMT