CSS не применяется после изменений - PullRequest
23 голосов
/ 10 июня 2011

У меня проблема с тем, что я не могу применить стиль в CSS в моем приложении ASP.NET MVC.Поведение таково, что оно применяется впервые, а затем последующие изменения в CSS не отражаются в моем _Layout.cshtml.Я не уверен, что мне здесь не хватает.

CSS-файл

body
{
    font-size: .85em;
    font-family: "Trebuchet MS", Verdana, Helvetica, Sans-Serif;
    color: #232323;
    background-color: #fff;
}

header,
footer,
nav,
section {
    display: block;
}

/* Styles for basic forms
-----------------------------------------------------------*/

fieldset 
{
    border:1px solid #ddd;
    padding:0 1.4em 1.4em 1.4em;
    margin:0 0 1.5em 0;
}

legend 
{
    font-size:1.2em;
    font-weight: bold;
}

textarea 
{
    min-height: 75px;
}

.editor-label 
{
    margin: 1em 0 0 0;
}

.editor-field 
{
    margin:0.5em 0 0 0;
}


/* Styles for validation helpers
-----------------------------------------------------------*/
.field-validation-error
{
    color: #ff0000;
}

.field-validation-valid
{
    display: none;
}

.input-validation-error
{
    border: 1px solid #ff0000;
    background-color: #ffeeee;
}

.validation-summary-errors
{
    font-weight: bold;
    color: #ff0000;
}

.validation-summary-valid
{
    display: none;
}
#Header
{
    color:white;
    padding:1px;
}
#Content
{
    float:left;
    margin:10px;
}
#SideBar
{
    float :left;
    margin:10px;
    padding :10px;
    border:  dotted 1px  red;
    width:180px;
    font-style:italic;
}
#Footer
{
    text-align:center;
    clear:both;
}

Например, я изменил «рамку» в #SideBar с красного на черный.Но это всегда показывает красный.Я мог бы сделать что-то в корне неправильно.

_Layout.cshtml

<!DOCTYPE html>
<html>
<head>
    <title>@ViewBag.Title</title>
       <!--link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />-->
      <link href="@Url.Content("~/Content/SiteStyle.css")" rel="stylesheet" type="text/css" />
    <script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/Scripts/modernizr-1.7.min.js")" type="text/javascript"></script>
</head>

<body>
   <div id="Header" style="background-image: url('/Content/Images/Banner_Final3.png'); background-repeat:no-repeat; width :1500px; height : 150px;"   >

   </div>
   <div id="SideBar">
       @Html.Partial("UserControls/UserLogin", new AlanBeezLab.Models.LoginModel())
   </div>
   <div id="Content">
        @RenderBody()
   </div>
   <div id="Footer">
        <p>Copyright &copy; XXXXXXX</p>
   </div>
</body>
</html>

Однако, если переименовать физический файл и изменить ссылку в _Layout.cshtml, я смогу увидеть сделанные мной изменения,

Пожалуйста, помогите.

Спасибо

Ответы [ 5 ]

78 голосов
/ 10 июня 2011

Нажмите Ctrl-F5 для перезагрузки страницы без использования кэшированного содержимого

11 голосов
/ 10 июня 2011

Браузер может кэшировать статические файлы, такие как файлы CSS.

Если вы обновляете файл CSS, и это изменение не отображается при просмотре, попробуйте использовать CTRL-F5 в вашем браузере.

1 голос
/ 16 апреля 2013

Это будет работать, когда что-либо еще не будет, как в моем случае:

Кредит идет на: atticae

Вы можете добавить случайный параметр запроса в URL таблицы стилей (дляпример через JavaScript или код на стороне сервера).Он не изменит загружаемый файл css, но предотвратит кэширование, поскольку браузер обнаружит другой URL-адрес и не загрузит кэшированную таблицу стилей.

<link rel="stylesheet" type="text/css" href="http://mysite/style.css?id=1234">
0 голосов
/ 19 февраля 2019

В моем случае проблема заключалась в том, что у меня был файл стиля ресурса, который ссылался на код

string location = Page.ClientScript.GetWebResourceUrl(typeof(PageBase), "MyNS.Common.Web.Base.CommonStyle.css");
LiteralControl include = new LiteralControl(string.Format(tempLink, location));

Когда я изменял / добавлял какой-то стиль в файл, он не отражался в CommonStyle.css это не отражалось на веб-странице даже после очистки кэша (ctrl + f5, ctrl + shift + f5)?

При анализе я обнаружил, что причина была -

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

0 голосов
/ 20 июля 2018

К сожалению, Ctrl + F5 не работает для меня.Я должен перейти к Chrome: F12 -> вкладка Сеть -> щелкните правой кнопкой мыши в белой области, где все записи получения и публикации -> Очистить кеш браузера.Теперь, если вы нажмете Ctrl + F5 или просто F5, он должен работать.

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