我有一个循环
<ul id="news-list" class="thumbobs-list">
@foreach (var item in Model.News) {
@Html.Partial("RenderNews/" + item.TypeString, item)
}
</ul>
使用像这样的部分
@model Web.Models.DataModel.NewsItem
@{ Layout = null; }
<li class="news-item @Model.TypeString.ToLower()" id="id-@Model.Id">
<h3 class="headline">
Example News headline.
</h3>
<p class="timestamp">@Model.TimeString</p>
</li>
效果很好
但是当我使用css进行样式时遇到了导致问题的隐藏空白字符
在每个部分空间前面,U + FEFF和另一个空间导致设计问题。
有没有人见过这个?
答案 0 :(得分:5)
您已发现BOM,字节顺序标记。它存储为文本文件中的第一个字节以指示编码。
http://en.wikipedia.org/wiki/Byte_order_mark
[编辑]
您可以使用记事本打开文件,并将“另存为...”打开为ANSI。这将删除BOM(和编码)。
// reading a text file as binary will include the BOM flag
FileStream FS = new FileStream(MapPath(@"~\Text\TestUTF8.txt"), FileMode.Open);
byte[] Data = new byte[100];
FS.Read(Data, 0, 100); // BOM is in the data
FS.Close();
// get rid of the BOM
String String1 = System.Text.Encoding.UTF8.GetString(Data);
// reading a text file as text will automatically handle it.
String String2 = File.ReadAllText(MapPath(@"~\Text\TestUTF8.txt"));
答案 1 :(得分:1)
尝试复制文本并创建新的局部视图。将其粘贴到记事本中并重建部分以排除隐藏在部分中的此字符,或者只是将其加载到vs二进制编辑器上并查找该字符。右键单击并打开...然后选择二进制编辑器。