Google Chrome неправильно отображает переполнение - PullRequest
1 голос
/ 05 марта 2012

Я только что обнаружил, что горизонтальная прокрутка управления сервером ASP.Net не работает, когда используется атрибут align=right! Я покопался в сгенерированном HTML-коде и нашел что-то вроде этого:

<div align="right" style="overflow:scroll; width: 200px; height:200px;">
    <div style="width:400px; height:400px">
    </div>
</div>

Горизонтальная полоса прокрутки появляется в тот момент, когда вы удаляете атрибут align="right". Проверено в Chrome 17/18. Отлично работает в Firefox 10 и IE 10

Есть ли обходной путь?

PS. Должен ли я сообщить об ошибке людям Google Chrome? Это похоже на ошибку веб-набора!

Ответы [ 2 ]

1 голос
/ 05 марта 2012

Атрибут div, align устарел ...

http://www.w3.org/TR/html4/present/graphics.html#h-15.1.2

Поэтому я не верю, что вы можете винить ошибку браузера, когда что-то не отображается должным образом.

Я бы рекомендовал использовать CSS для достижения этого эффекта, например float: right; в качестве одного примера.

1 голос
/ 05 марта 2012

Я думаю, что использование CSS (float:right;) и устранение атрибута align решает проблему.

http://jsfiddle.net/rdjRS/

Это то, к чему вы стремились?


Обновление: я предполагаю, что вы можете добавить javascript, но вы не можете удалить javascript.Не могли бы вы попробовать включить этот код в свой JavaScript?Он перемещает элемент вправо, а затем удаляет устаревший атрибут выравнивания.

    <script src="http://code.jquery.com/jquery-1.7.1.min.js" type="text/javascript"L></script>
    <script type="text/javascript">
​        $('[align="right"]')​.css('float', 'right').removeAttr('align');​​​​​​​​​​​​​
    </script>

Да, это зависит от jQuery.

Как вы видите, это работает без удаления каких-либо HTML или CSS, которыебыл уже там.http://jsfiddle.net/hLg73/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...