2014-02-27 142 views
2

我的HTML頁面包含許多負數的表格,如– 0.25。 8211是n-dash。因爲我的文檔最終應該成爲epub2,所以不允許使用javascript。只有xhtml + css。防止負數破壞

不幸的是,無論是電子書閱讀器還是Chrome的打印功能,即使在之前和/或之後有空格的情況下,在連字符與零之間換行爲負數是一個合理的想法,例如,在一張桌子裏。

我需要一個「不破壞」的連字符?畢竟,也有不易破碎的空間。還是有辦法指示css永遠不要在整個文檔的任何地方打破這些負數? (我懷疑這一個,但只是要問。)

當然,我可以將每個負數換成跨度以防止斷裂,但這是相當痛苦的。從字面上看,在我全部完成的時候,我的數字-0.25將不得不變成< span class =「nobreak」> &#8211; 0.25 </span >。 (笑話:它幾乎就像是一個DOS 10x放大攻擊,4個字符變成40個字符,全都是因爲我想要負數。)

建議讚賞。

/IAW

+1

連字符不是負數,即使它看起來像一個。 – thebjorn

回答

3

您可以防止負數通過使用合適的減號破「 - 」(U + 2212)。在 文本渲染中,瀏覽器,電子書閱讀器和其他軟件通常將EN DASH和HYPHEN-MINUS(常見的Ascii連字符)視爲允許在它之後出現換行符,即使緊接着是數字。對於MINUS SIGN沒有觀察到這種行爲。

在HTML中,如果您在輸入字符時遇到困難,或者您希望任何閱讀使用MINUS SIGN的HTML源碼的人都清楚,可以將MINUS SIGN寫爲&minus;

+0

−與Unicode連字符‑不相同,並且不防止換行符。 – danebez

+0

@danebez,之前沒有人提到Unicode連字符,並且MINUS SIGN確實可以防止我測試的所有瀏覽器中出現斷行情況;請指出您觀察過的瀏覽器不會阻止破解。 –

+0

確實不是,這就是我提到它的原因。 Google Chrome for Mac版本34.0.1847.131。 – danebez