只有 css 文件中的某些特定更改会反映在浏览器中

Posted

技术标签:

【中文标题】只有 css 文件中的某些特定更改会反映在浏览器中【英文标题】:Only certain specific changes in css file being reflected in browser 【发布时间】:2021-09-10 06:30:18 【问题描述】:

我有以下用于开发 Web 项目的 CSS 和 html 代码:

style.css:

body 
    background-color: red;
    font-size: 14px;
    font-family: Roboto,arial,sans-serif
    color: gray;


img 
    height: 92px;
    width: 272px;


a 
    color: gray;


a:visited 
    text-decoration: none;


.navbutton,
.footbutton 
    text-decoration: none;


a:hover 
    text-decoration: underline;


.nav-img 
    border-radius: 50%;
    height: 32px;
    width: 32px;

index.html:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    <title>Google</title>
    <link rel="stylesheet" type="text/css" href="style.css?version=8">
    <!-- Bootstrap -->
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css" integrity="sha384-HSMxcRTRxnN+Bdg0JdbxYKrThecOKuH5zCYotlSAcp1+c8xmyTe9GYg1l9a69psu" crossorigin="anonymous">

    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
    <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
  </head>
  <body>
    <div class="navbar container">
      <a class="navbutton" href="https://about.google/?fg=1&utm_source=google-US&utm_medium=referral&utm_campaign=hp-header">About</a>
      <a class="navbutton" href="https://store.google.com/US?utm_source=hp_header&utm_medium=google_ooo&utm_campaign=GS100042&hl=en-US">Store</a>
      <a class="navbutton" href="https://mail.google.com/mail/?authuser=0&ogbl">Gmail</a>
      <a class="navbutton" href="https://www.google.com/imghp?hl=en&authuser=0&ogbl">Images</a>
      <a class="navbutton nav-img" href="https://www.google.com">
        <img src="https://i.stack.imgur.com/34AD2.jpg">
      </a>
    </div>
    <div class="bod">
      <div class="main-img">
        <img src="https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png" >
      </div>
      <input type="text">
    </div>
    <div class="srch-button">
      <button type="button">Google Search</button>
      <button type="button">I'm Feeling Lucky</button>
    </div>

    <!-- jQuery (necessary for Bootstrap's javascript plugins) -->
    <script src="https://code.jquery.com/jquery-1.12.4.min.js" integrity="sha384-nvAa0+6Qg9clwYCGGPpDQLVpLNn0fRaROjHqs13t4Ggj3Ez50XnGQqc/r8MhnRDZ" crossorigin="anonymous"></script>
    <!-- Include all compiled plugins (below), or include individual files as needed -->
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js" integrity="sha384-aJ21OjlMXNL5UyIl/XNwTMqvzeRMZH2w8c5cRVpzpU8Y5bApTppSuUkhZXN0VxHd" crossorigin="anonymous"></script>
  </body>

  <footer>
    <div class="footbutton">
      <a href="https://ads.google.com/intl/en_us/home/?subid=ww-ww-et-g-awa-a-g_hpafoot1_1!o2m--ahpm-0000000078-0000000001&utm_source=google.com&utm_medium=referral&utm_campaign=google_hpafooter&fg=1#!/">
        Advertising
      </a>
      <a href="https://smallbusiness.withgoogle.com/?subid=us-en-et-g-awa-a-g_hpbfoot1_1!o2&utm_source=google&utm_medium=ep&utm_campaign=google_hpbfooter&utm_content=google_hpbfooter&gmbsrc=us-en_US-et-gs-z-gmb-s-z-u~sb-g4sb_srvcs-u">
        Business
      </a>
      <a href="https://www.google.com/search/howsearchworks/?fg=1">
        How Search Works
      </a>
      <a href="https://sustainability.google/commitments/?utm_source=googlehpfooter&utm_medium=housepromos&utm_campaign=bottom-footer&utm_content=">
        <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAYCAMAAAAiV0Z6AAAAPFBMVEVLoEN0wU6CzFKCzFKCzFKCzFKCzFJSo0MSczNDmkCCzFJPoUMTczNdr0gmgziCzFITczMTczMTczMTczPh00jOAAAAFHRSTlPF/+bIsms8Ad///hX+//5/tXw7aMEAx10AAACaSURBVHgBbc4HDoRQCATQ33tbvf9dF9QxaCT9UQaltLHOh/golXKhMs5Xqa0xU1lyoa2fXFyQOsDG38qsLy4TaV+sFislovyhPzLJJrBu6eQOtpW0LjbJkzTuTDLRVNKa3uxJI+VdiRqXSeu6GW+Qxi29eLIi8H7EsYrT42BD+mQtNO5JMjRuC4lSY8V4hsLX0egGijvUSEP9AbylEsOkeCgWAAAAAElFTkSuQmCC"> 
        Carbon Neutral Since 2007
      </a>
      <a href="https://policies.google.com/privacy?hl=en&fg=1">
        Privacy
      </a>
      <a href="https://policies.google.com/terms?hl=en&fg=1">
        Terms
      </a>
      <a href="https://www.google.com/">
        Settings
      </a>

  </footer>
</html>

由于某种原因,每当我对 css 文件进行更改时,我可以在浏览器 (Chrome) 中看到的唯一更改是我对 img 选择器中的 img 尺寸所做的任何更改(例如:我会看到如果我将 img 的高度更改为 100px,浏览器会发生变化)。在浏览器中看不到其他更改。我已经尝试将查询字符串添加到 HTML 文件中的链接 href,以及在 Chrome 的开发人员工具菜单中禁用缓存。我认为这是一个缓存问题,但是,我仍然只能看到图像尺寸变化的事实使它变得更加复杂。有谁知道解决办法吗?

问题示例: 将 img 选择器中的宽度从 272px 更改为 372px 始终反映在浏览器中。将背景颜色从白色更改为红色(如上面的代码所示)不会在浏览器中显示(呈现为白色背景)。

【问题讨论】:

您在以下内容后缺少分号:font-family: Roboto,arial,sans-serif 我修好了,仍然没有改变。 您能否将您的 HTML 连同 minimum, reproducible example 一起包含在内? 刚刚添加了html! 【参考方案1】:

您的 CSS 样式很可能被另一个类取代,例如如果您要导入一个应用它自己的 CSS 的库。

您可以通过添加类名来增加定位的特异性(请参阅order of precedence)。

.redContainer 
    background-color: red;

或使用!important 覆盖其他样式。

body 
    background-color: red !important;

【讨论】:

太棒了!如果答案解决了您的问题,请将其标记为已接受,以便将来的用户可以找到相同的答案。【参考方案2】:

对我来说它有效。我保存了你的代码here 当我更改一些属性(如背景颜色或字体颜色等)时它可以工作。我在 chrome 上运行代码 例如我改变了背景颜色:

body
background-color: blue;

成功了 所以我想问题出在你的头元素上。可能其中一个样式表链接地址错误,或者可能其中一个样式表在运行 css 规则时获得了更高的优先级

【讨论】:

以上是关于只有 css 文件中的某些特定更改会反映在浏览器中的主要内容,如果未能解决你的问题,请参考以下文章

对话框中的更改未反映在可执行文件中

有没有更好的方法来反映用户端更改的 CSS 代码,而不是告诉他们请清除缓存以查看更新? [复制]

.xhtml 文件中的更改未反映在浏览器中,需要重新启动和构建

当特定文件夹中的文件发生更改时触发多分支管道

更改不会反映在 laravel 视图中

阻止某些特定页面中的特定 css 内容