全球化中不断变化的方向asp.net MVC

本文关键字:方向 asp net MVC 变化 全球化 | 更新日期: 2023-09-27 18:07:33

查看

   <div class="panel-body">
                <div class="form-group" style="direction: rtl">
                    <div class="col-md-2">
                        <label class="control-label">@Resources.VMSResource.VisitorName </label>
                    </div>
                    <div class="col-md-3">
                        @Html.EditorFor(model => model.VisitorName, new { htmlAttributes = new { @class = "form-control input-sm " } })
                        @Html.ValidationMessageFor(model => model.VisitorName, "", new { @class = "text-danger" })
                    </div>
                    <div class="col-md-2">
                        <label class="control-label">@Resources.VMSResource.EmployeeID </label>
                    </div>
                    <div class="col-md-3">
                        @Html.EditorFor(model => model.EmployeeID, new { htmlAttributes = new { @class = "form-control input-sm" } })
                        @Html.ValidationMessageFor(model => model.EmployeeID, "", new { @class = "text-danger" })
                    </div>
                </div>
</div>

我正在MVC中实现全球化。

对于阿拉伯语,我希望控件指向RTL。我尝试将DIV:的方向设置为RTL

 <div class="panel-body" style="direction:RTL">

但它只是将文本框中的方向设置为RTL。相反,我希望控件(如标签、文本框(移动RTL。

全球化中不断变化的方向asp.net MVC

要制作一个专为从左到右语言设计的CSS来使用从右到左语言并不像看上去那么容易。仅仅将父元素的方向更改为RTL并不意味着所有子元素都正确地成为RTL。还有更多的事情要做。例如,你应该将margin right更改为margin right,或者更改填充的值,等等。

通过这种方式,有几个教程是基于不同的方法;他们都有利弊。首先,我向您推荐3种不同的方法来RTL您的CSS和RTLCSS

如果你使用Bootstrap,在我看来,最好的选择是https://github.com/morteza/bootstrap-rtl.

<html dir="@(System.Globalization.CultureInfo.DefaultThreadCurrentCulture.TextInfo.IsRightToLeft? "rtl" : "ltr")">

代码样本取自aspnet核心

详细信息,您可以通过下面的链接联系。

https://www.w3schools.com/tags/att_global_dir.asp

在Html中使用

<!DOCTYPE html>
<html dir="rtl" lang="ar">
<head>
<meta charset="utf-8">
...

这几乎改变了一切对我来说都是正确的,除了在我的网站.css文件中使用的标签

.form-horizontal .control-label {
    float: right;
}