MVC 3 и RTL - проблемы с IE9 - PullRequest
       10

MVC 3 и RTL - проблемы с IE9

0 голосов
/ 15 февраля 2012

Я работал с очень простым проектом ASP.Net MVC3, чтобы поэкспериментировать с локализацией строк и RTL. У меня есть вид, который выглядит так:


@model LocalizationExample.Models.HomeModel

@using Microsoft.License.Ux.Partner.LanguageResources.Order;
@{
    ViewBag.Title = "Index";
}

<h2>@OrderResource.PageTitle</h2>
<div dir="rtl">
        @Html.LabelFor(x => x.Field1) @Html.TextBoxFor(x => x.Field1)<br />
        @Html.LabelFor(x => x.Field2) @Html.TextBoxFor(x => x.Field2)<br />
        @Html.LabelFor(x => x.Field3) @Html.TextBoxFor(x => x.Field3)<br />
</div>

В FireFox 10 и Chrome 17 это приводит к трем строкам TextBox с метками справа - все выровнены по правой стороне браузера.

В IE9 первые два текстовых поля имеют метки слева, а последнее текстовое поле имеет метку справа - все они выровнены с правой стороны браузера.

Я попытался переместить "dir" вверх в тег body, а также в тег html, но я получил тот же результат. Как я могу заставить это отображаться правильно в IE9?

Заранее спасибо!

1 Ответ

0 голосов
/ 17 февраля 2012

Похоже, что они выровнены правильно, если вы вложите их в div:

<div dir="rtl">
    <div>
        @Html.LabelFor(x => x.Field1) @Html.TextBoxFor(x => x.Field1)
    </div>
    <div>
        @Html.LabelFor(x => x.Field2) @Html.TextBoxFor(x => x.Field2)
    </div>
    <div>
        @Html.LabelFor(x => x.Field3) @Html.TextBoxFor(x => x.Field3)
    </div>
</div>
...