Difference between revisions of "Template:PBR/doc"

From Second Life Wiki
Jump to navigation Jump to search
m
(11 intermediate revisions by the same user not shown)
Line 5: Line 5:
===How it works===
===How it works===
The original version used an empty "div" tag but it had the side effect that you would have to fight the wiki engine to keep it from inserting "p" tags. The solution is to *not* fight the wiki engine and use a tag that it will let you include in "p" tags. The new version uses an empty "span" tag, which is "p" friendly but with inline style we convert the tag to "block" from "inline".
The original version used an empty "div" tag but it had the side effect that you would have to fight the wiki engine to keep it from inserting "p" tags. The solution is to *not* fight the wiki engine and use a tag that it will let you include in "p" tags. The new version uses an empty "span" tag, which is "p" friendly but with inline style we convert the tag to "block" from "inline".
===Problems===
Because of the unorthodox (ab)use of this mix of CSS, HTML and MediaWiki we end up with a situation where strange things happen that few web browser authors have given much thought to. Specifically when copying the text the result is different depending upon which web browser you use. The only browser to support this flawlessly at present are those based on Webkit (Google Chrome, Safari). Both IE 8.0 and Firefox 3.0 are buggy.
===Name===
Q: Why PBR?<br/>
A: Pseudo-BReak


==Breaking Lines==
==Breaking Lines==
{|
{| border="1" cellspacing="0"
|-valign="top"
|-valign="top"
|
|
===BR Tag===
===BR Tag===
<hr>
<div>
<div>
test<br>
test<br>
Line 24: Line 32:
</div>
</div>
<hr>
<hr>
|
===SPAN {{HoverText|D:B|display:block}}===
<hr>
<div>
test<span style="display:block;"></span>
test<span style="display:block;"></span>
test<br>test<span style="display:block;"></span>
test<span style="display:block;"></span>
test<span style="display:block;"></span>test<span style="display:block;"></span>
test<span style="display:block;"></span>
<span style="display:block;"></span>
<span style="display:block;"></span>
<span style="display:block;"></span>
test<span style="display:block;"></span>
</div>
<hr>
|
==={{HoverText|SPAN|display:block;}} + {{HoverText|BR|display:none;}}===
<hr>
<div>
test<span style="display:block;"></span><br style="display:none;">
test<span style="display:block;"></span><br style="display:none;">
test<br>test<span style="display:block;"></span><br style="display:none;">
test<span style="display:block;"></span><br style="display:none;">
test<span style="display:block;"></span><br style="display:none;">test<span style="display:block;"></span><br style="display:none;">
test<span style="display:block;"></span><br style="display:none;">
<span style="display:block;"></span><br style="display:none;">
<span style="display:block;"></span><br style="display:none;">
<span style="display:block;"></span><br style="display:none;">
test<span style="display:block;"></span><br style="display:none;">
</div>
<hr>
|
===PBR Template===
<hr>
<div>
test{{PBR}}
test{{PBR}}
test<br>test{{PBR}}
test{{PBR}}
test{{PBR}}test{{PBR}}
test{{PBR}}
{{PBR}}
{{PBR}}
{{PBR}}
test{{PBR}}
</div>
<hr>
|
===Goal===
<hr>
<div>
test<br>
test<br>
test<br>
test<br>
test<br>
test<br>
test<br>
test<br>
test<br>
</div>
<hr>
|- valign="top"
|
|
===DIV===
===DIV===
<hr>
<div>
<div>
test<div></div>
test<div></div>
Line 40: Line 114:
<hr>
<hr>
|
|
===SPAN Block===
===CENTER===
<hr>
<div>
<div>
test<span style="display:block;"></span>
test<center></center>
test<span style="display:block;"></span>
test<center></center>
test<br>test<span style="display:block;"></span>
test<br>test<center></center>
test<span style="display:block;"></span>
test<center></center>
test<span style="display:block;"></span>test<span style="display:block;"></span>
test<center></center>test<center></center>
test<span style="display:block;"></span>
test<center></center>
<span style="display:block;"></span>
<center></center>
<span style="display:block;"></span>
<center></center>
<span style="display:block;"></span>
<center></center>
test<span style="display:block;"></span>
test<center></center>
</div>
</div>
<hr>
<hr>
|
|
===BR Tag + Style===
===BR {{HoverText|D:T|display:table;}}===
<hr>
<div>
<div>
test<br style="display:table;">
test<br style="display:table;">
Line 70: Line 146:
<hr>
<hr>
|
|
===PBR Template===
===BR {{HoverText|D:B|display:block;}}===
<hr>
<div>
test<br style="display:block;">
test<br style="display:block;">
test<br>test<br style="display:block;">
test<br style="display:block;">
test<br style="display:block;">test<br style="display:block;">
test<br style="display:block;">
<br style="display:block;">
<br style="display:block;">
<br style="display:block;">
test<br style="display:block;">
</div>
<hr>
|
===Goal===
<hr>
<div>
<div>
test{{PBR}}
test<br>
test{{PBR}}
test<br>
test<br>test{{PBR}}
test<br>
test{{PBR}}
test<br>
test{{PBR}}test{{PBR}}
test<br>
test{{PBR}}
test<br>
{{PBR}}
test<br>
{{PBR}}
test<br>
{{PBR}}
test<br>
test{{PBR}}
</div>
</div>
<hr>
<hr>

Revision as of 15:30, 8 May 2009

WTF?

Template:PBR is intended to give the outward appearance and effect of the BR tag with the exception that multiple uses of it will not cause multiple lines of whitespace. You use it everywhere you want a linebreak but don't want to have extra whitespace associated with linebreaks piling up. Essentially PBR is a conditional BR, if a BR is needed it works as a BR, if it's not needed it has no effect. It's the bees knees.

How it works

The original version used an empty "div" tag but it had the side effect that you would have to fight the wiki engine to keep it from inserting "p" tags. The solution is to *not* fight the wiki engine and use a tag that it will let you include in "p" tags. The new version uses an empty "span" tag, which is "p" friendly but with inline style we convert the tag to "block" from "inline".

Problems

Because of the unorthodox (ab)use of this mix of CSS, HTML and MediaWiki we end up with a situation where strange things happen that few web browser authors have given much thought to. Specifically when copying the text the result is different depending upon which web browser you use. The only browser to support this flawlessly at present are those based on Webkit (Google Chrome, Safari). Both IE 8.0 and Firefox 3.0 are buggy.

Name

Q: Why PBR?
A: Pseudo-BReak

Breaking Lines

BR Tag


test
test
test
test
test
test
test
test



test


SPAN D:B


test test test
test test testtest test test


SPAN + BR


test
test
test
test
test
test
test
test



test


PBR Template


test test test
test test testtest test test


Goal


test
test
test
test
test
test
test
test
test


DIV


test
test
test
test
test
test
test
test
test

CENTER


test
test
test
test
test
test
test
test
test

BR D:T


test
test
test
test
test
test
test
test



test


BR D:B


test
test
test
test
test
test
test
test



test


Goal


test
test
test
test
test
test
test
test
test


Links of Interest

http://www.quirksmode.org/css/display.html