2011-12-25 89 views
1

這可能做自己的實體嗎?HTML/CSS自己的實體

贊:&longline; - > -----------------------------

然後在HTML代碼中使用它:

<div> 
    &longline; 
    bla bl bla 
</div> 

回答

2

XML中使用<!ENTITY>聲明是可能的,但我不會推薦它。您的網站將不再是HTML,並且大多數瀏覽器都不會接受它。 (的確,沒有,unless your file is XML,這相反擊敗了這個目的。)使用JavaScript的客戶端處理是可能的,但不可訪問。除非是用戶輸入,否則服務器端處理是浪費時間,在這種情況下,您應該在將數據插入數據庫之前更換實體。

所以,是的,這是可能的,但除非你有充分的理由這麼做......不要!

+0

不錯的觀察! – 2011-12-25 09:34:04

1

不,不是純粹的HTML。

但是,這種所需的行爲可以通過javascript(或PHP,python,ruby)來實現。你可以掃描所有的文本節點並相應地進行替換。

但是,我很難看出您爲什麼喜歡這樣的行爲。我認爲你應該使用合適的元素<hr>元素。 CSS支持border: 1px dashed black;所以它看起來像很多破折號( - )。

Php也有功能str_repeat('-', 30);。這將使30破折號,但它必須被替換服務器端。

+0

哦不:(我以爲我見過像我需要的功能,但我很久以前,這只是我想象中的想法。#edit:嘿,那條線就是例子,我試着用這樣的實體: &ArgumetnNullException;建立一個msdn的鏈接#edit:也像這樣:http://www.w3schools.com/dtd/dtd_entities.asp。所以我們可以製作實體,但它不是html5:/ – zgnilec 2011-12-25 09:33:27

+0

好吧,也許如果你告訴你想要達到什麼樣的行爲,我們可能會提供另一種解決方案 – 2011-12-25 09:35:50

+0

是的,但它確實有問題的瀏覽器支持,如果你必須這樣做,我會用javascript來完成,使用jQuery很簡單。 – 2011-12-25 09:38:59

1

如果您使用的是服務器端語言號,你可以使用一個字符串在語言替換功能(PHP,C#,Java和Ruby的,等等),但不是在純HTML。

1

不可能使用HTML,但實現此目標的最佳方法是服務器端腳本,以便用戶可以接收純粹格式良好的HTML,但可以讓開發人員自由使用您想要執行的方法來生成HTML 。

PHP可以通過緩存輸出來完成此操作,然後用新字符串替換所有匹配項。