Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
近有客戶在linux系統(tǒng)部署皕杰報表后發(fā)現(xiàn)總有高度拉伸不到位的情況發(fā)生,可是我們自己卻無論怎么測試都不能重現(xiàn)問題。不能重現(xiàn)問題,就不好找出解決問題的方法。
于是要來了這張問題表的html源代碼,在瀏覽器中打開后用F12檢查,發(fā)現(xiàn)這個單元格的拉伸高度計算不正確。見下圖:
是什么原因?qū)е碌挠嬎沐e誤呢?我們分析有兩種可能,一是所用的皕杰報表版本太老,二是計算高度的依據(jù)缺失,而計算拉伸高度的依據(jù)是字體和字號。
檢查了客戶使用的版本號沒有問題,但在linux系統(tǒng)里卻只安裝了宋體,其它中文字體都沒有,而在報表里選擇的字體卻是微軟雅黑,計算的依據(jù)沒了,系統(tǒng)所以計算出的拉伸高度就是錯的了。讓用戶把報表里的字體改成宋體,再測試?yán)旄叨茸兇罅艘稽c,但是還是沒有完全拉開,我們判斷是jre里也沒有宋體,理論上在jre里安裝宋體后拉伸問題就會得到解決。
因而我們給了兩個解決方案:一是在linux系統(tǒng)中和jre中安裝所用的中文字體,方法按linux系統(tǒng)及安裝jdk的基本要求,這里不做說明。二是改這個單元格的css,讓單元格廢棄計算的拉伸高度,改為自動拉伸。
在皕杰報表設(shè)計器全局屬性web資源引用中添加:
<style type="text/css">
.expand div{
height: auto !important;
}
</style>
在設(shè)計器這個單元格的屬性css樣式里添加expand。
用戶覺得jre中安裝中文字體比較麻煩,決定采用方法二測試。部署后我們看到單元格已經(jīng)正常拉伸了,用F12檢查一下運行的css,果然是廢棄了計算的高度,而采用了我們新增的css格式。見圖:
至此高度拉伸不到位問題得以解決。但我們認(rèn)為最好的解決方案還是方法一,把要用的中文字體安裝上,避免產(chǎn)生錯誤的計算結(jié)果。
SS3 @font-face 規(guī)則
以前CSS3的版本,網(wǎng)頁設(shè)計師不得不使用用戶計算機上已經(jīng)安裝的字體。
使用CSS3,網(wǎng)頁設(shè)計師可以使用他/她喜歡的任何字體。
當(dāng)你發(fā)現(xiàn)您要使用的字體文件時,只需簡單的將字體文件包含在網(wǎng)站中,它會自動下載給需要的用戶。
您所選擇的字體在新的CSS3版本有關(guān)于@font-face規(guī)則描述。
您"自己的"的字體是在 CSS3 @font-face 規(guī)則中定義的。
瀏覽器支持
表格中的數(shù)字表示支持該屬性的第一個瀏覽器版本號。
屬性 | |||||
---|---|---|---|---|---|
@font-face | 4.0 | 9.0 | 3.5 | 3.2 | 10.0 |
Internet Explorer 9+, Firefox, Chrome, Safari, 和 Opera 支持 WOFF (Web Open Font Format) 字體.
Firefox, Chrome, Safari, 和 Opera 支持 .ttf(True Type字體)和.otf(OpenType)字體字體類型)。
Chrome, Safari 和 Opera 也支持 SVG 字體/折疊.
Internet Explorer 同樣支持 EOT (Embedded OpenType) 字體.
注意: Internet Explorer 8 以及更早的版本不支持新的 @font-face 規(guī)則。
使用您需要的字體
在新的 @font-face 規(guī)則中,您必須首先定義字體的名稱(比如 myFirstFont),然后指向該字體文件。
如需為 HTML 元素使用字體,請通過 font-family 屬性來引用字體的名稱 (myFirstFont):
實例
<style> @font-face{font-family:myFirstFont; src:url(sansation_light.woff);}div{font-family:myFirstFont;}</style>
使用粗體文本
您必須添加另一個包含粗體文字的@font-face規(guī)則:
實例
@font-face{font-family:myFirstFont; src:url(sansation_bold.woff); font-weight:bold;}
該文件"Sansation_Bold.ttf"是另一種字體文件,包含Sansation字體的粗體字。
瀏覽器使用這一文本的字體系列"myFirstFont"時應(yīng)該呈現(xiàn)為粗體。
這樣你就可以有許多相同的字體@font-face的規(guī)則。
CSS3 字體描述
下表列出了所有的字體描述和里面的@font-face規(guī)則定義:
提示:
URL請使用小寫字母的字體,大寫字母在IE中會產(chǎn)生意外的結(jié)果描述符 | 值 | 描述 |
---|---|---|
font-family | name | 必需。規(guī)定字體的名稱。 |
src | URL | 必需。定義字體文件的 URL。 |
font-stretch | ||
font-style | ||
font-weight | ||
unicode-range | unicode-range | 可選。定義字體支持的 UNICODE 字符范圍。默認(rèn)是 "U+0-10FFFF"。 |
normal
condensed
ultra-condensed
extra-condensed
semi-condensed
expanded
semi-expanded
extra-expanded
ultra-expanded
normal
italic
oblique
可選。定義字體的樣式。默認(rèn)是 "normal"。
normal
bold
100
200
300
400
500
600
700
800
900
可選。定義字體的粗細(xì)。默認(rèn)是 "normal"。
如您還有不明白的可以在下面與我留言或是與我探討QQ群308855039,我們一起飛!
切圖網(wǎng)客戶項目中碰到一個問題,有一個數(shù)字需要傾斜,這個便用到了css3的 rotate的旋轉(zhuǎn)的屬性,沒有用 skew傾斜,因為傾斜以后的文字是被拉伸變形了,但我并不像這樣,下面是css3詳細(xì),另外要說明的是,這個數(shù)字做了 滾動到當(dāng)前屏幕的時候,數(shù)字增長。
用到了jquery插件
<script type='text/javascript' src='js/jquery-waypoints-2.0.3.js'></script> <!--滾動視差-->
<script type="text/javascript" src="js/jquery.countTo.js"></script> <!--數(shù)字增長-->
共一個參數(shù)“角度”,單位deg為度的意思,正數(shù)為順時針旋轉(zhuǎn),負(fù)數(shù)為逆時針旋轉(zhuǎn),上述代碼作用是順時針旋轉(zhuǎn)45度。
二.縮放 scale
用法:transform: scale(0.5) 或者 transform: scale(0.5, 2);
參數(shù)表示縮放倍數(shù);
一個參數(shù)時:表示水平和垂直同時縮放該倍率
兩個參數(shù)時:第一個參數(shù)指定水平方向的縮放倍率,第二個參數(shù)指定垂直方向的縮放倍率。
三.傾斜 skew
用法:transform: skew(30deg) 或者 transform: skew(30deg, 30deg);
參數(shù)表示傾斜角度,單位deg
一個參數(shù)時:表示水平方向的傾斜角度;
兩個參數(shù)時:第一個參數(shù)表示水平方向的傾斜角度,第二個參數(shù)表示垂直方向的傾斜角度。
四.移動 translate
用法:transform: translate(45px) 或者 transform: translate(45px, 150px);
參數(shù)表示移動距離,單位px,
一個參數(shù)時:表示水平方向的移動距離;
兩個參數(shù)時:第一個參數(shù)表示水平方向的移動距離,第二個參數(shù)表示垂直方向的移動距離。
五.基準(zhǔn)點 transform-origin
在使用transform方法進(jìn)行文字或圖像的變形時,是以元素的中心點為基準(zhǔn)點進(jìn)行的。使用transform-origin屬性,可以改變變形的基準(zhǔn)點。
用法:transform-origin: 10px 10px;
共兩個參數(shù),表示相對左上角原點的距離,單位px,第一個參數(shù)表示相對左上角原點水平方向的距離,第二個參數(shù)表示相對左上角原點垂直方向的距離;
兩個參數(shù)除了可以設(shè)置為具體的像素值,其中第一個參數(shù)可以指定為left、center、right,第二個參數(shù)可以指定為top、center、bottom。
六.多方法組合變形
上面我們介紹了使用transform對元素進(jìn)行旋轉(zhuǎn)、縮放、傾斜、移動的方法,這里講介紹綜合使用這幾個方法來對一個元素進(jìn)行多重變形。
用法:transform: rotate(45deg) scale(0.5) skew(30deg, 30deg) translate(100px, 100px);
這四種變形方法順序可以隨意,但不同的順序?qū)е伦冃谓Y(jié)果不同,原因是變形的順序是從左到右依次進(jìn)行,這個用法中的執(zhí)行順序為1.rotate 2.scalse 3.skew 4.translate
原文地址:http://www.qietu.cn/thread-15197-1-1.html (切圖社區(qū))
加微信公眾號:qietuwang (限做前端的人)
*請認(rèn)真填寫需求信息,我們會在24小時內(nèi)與您取得聯(lián)系。