我正在嘗試使用專有的MS篩選器DXImageTransform.Microsoft.Matrix
旋轉IE8中的可點擊元素。我已經正確地計算了矩陣,並且元素明顯旋轉,但是響應點擊的區域似乎保持與旋轉之前相同的形狀和位置。在IE8中旋轉可點擊元素+
實施例的代碼,其顯示這樣的問題:CSS的
<html>
<head>
<link rel="stylesheet" href="test.css"/>
<script src="jquery.js"></script>
<script src="test.js"></script>
</head>
<body>
<div class="rotated">
Element which is longer than it is wide...
</div>
</body>
</html>
含量::JS的
.rotated {
height: 15px; /* required for IE7 to perform rotation */
filter: progid:DXImageTransform.Microsoft.Matrix(M11=0, M12=-1, M21=1, M22=0, sizingMethod='auto expand');
}
內容:HTML的
內容
jQuery(function($) {
$('.rotated').click(function() {
alert('You clicked within the original boundary');
});
});
點擊左上角文本的內容將顯示警報,但是,在可見文本低於指定高度的任何位置都不會註冊。請注意,這不會在IE7中執行相同的操作;可點擊區域也旋轉。
我也試過用progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
來代替矩陣濾波器,但是這有相同的結果。
過去有沒有人需要處理這個問題,或者是否有任何有助於解決這種情況的信息?
編輯:我已經重複了這一對的jsfiddle: http://jsfiddle.net/e46jD/
編輯:原來我已經燒爲依託,IE9提供IE8的精確仿真。在IE8的實際安裝中測試代碼工作正常。所以,現在唯一的問題是IE9本身。
正如我的編輯中所解釋的,這適用於IE8。任何洞察到使這項工作的IE9? – metafunk 2012-01-18 01:18:55
@metafunk我現在還沒有用於測試的IE9:它有什麼問題?它不旋轉文字或不可點擊? – fcalderan 2012-01-18 08:31:13
會發生什麼,元素是可見的旋轉,但原始元素的有效邊界框不旋轉,所以唯一可點擊的部分是兩個(有效的頂角)的重疊。我懷疑這只是部分支持DXImageTransform.Microsoft。*過濾器,因爲IE9現在支持-ms-transform CSS規則。我已經給出和使用瀏覽器特定的類的元素:(在IE9上的 – metafunk 2012-01-20 03:43:55