我的网站目前已经被自动纳入该网站的一部分,3个CSS文件,我也 没有 访问源即 index.html的 网站 ,但我有
访问我的网站的CSS文件。
我正在尝试使用自己的样式来覆盖我的网站CSS文件,并创建一个新的CSS文件,其中包含我要在网站上覆盖的所有样式。
我尝试使用,@import url(css4.css)
并将其放在最后一个CSS文件的顶部,但这不会覆盖最后一个CSS文件的样式。
我该如何实现?
<link rel="stylesheet" type="text/css" href="currentCSS1.css">
<link rel="stylesheet" type="text/css" href="currentCSS2.css">
<link rel="stylesheet" type="text/css" href="currentCSS3.css">
<!-- How to add this below just by using CSS? -->
<link rel="stylesheet" type="text/css" href="newCSS4.css">
除了使用!important
大多数建议您使用的答案外,这还取决于
CSS的特定性
这个概念
特异性是浏览器决定哪些属性值与元素最相关并得到应用的方式。特异性仅基于由不同种类的选择器组成的匹配规则。
如何计算?
特异性是根据每种选择器类型计数的串联计算得出的。它是应用于相应匹配表达式的权重。
如果特异性相等,则将CSS中找到的最新声明应用于该元素。
一些经验法则
- 切勿 在站点范围的CSS上使用!important。
- 仅 在覆盖整个站点范围或外部CSS的特定于页面的CSS上使用!important(例如,来自ExtJs或YUI)。
- *在编写插件/混搭程序时, *切勿 使用!important。
- *甚至在考虑!important之前, *始终 寻找使用特异性的方法
可以由4列优先级表示:
内联 = 1 | 0 | 0 | 0
id = 0 | 1 | 0 | 0
类别 = 0 | 0 | 1 | 0
元素 = 0 | 0 | 0 | 1
从左到右,最高编号优先。
这是一个带有CSS特定性完整示例的代码段
/*demo purposes*/
body {margin: 0;padding: 0}
div,article {min-height: 200px;height: 100%;width: 100%}
/*CSS Specificity */
/* SPECIFICITY: 0/1/0/0 */
#id {
background-color: green
}
/* SPECIFICITY: 0/0/1/0 */
.class {
background-color: yellow
}
/* SPECIFICITY: 0/0/0/1 */
section {
background-color: blue
}
/* ------------ override inline styles ----------- */
/*to override inline styles we now use !important */
/* SPECIFICITY 0/0/1/0 */
.inline {
background-color: purple !IMPORTANT /*going to be purple - final result */
}
<article>
<div id="id">
<div class="class">
<section>
<div class="inline" style="background-color:red">
<!--SPECIFICITY 1/0/0/0 - overridden by "!important -->
</div>
</section>
</div>
</div>
</article>
现在是逐步的完整代码段
/*demo purposes*/
body {margin: 0;padding: 0}
div,article {min-height: 200px;height: 100%;width: 100%}
/*CSS Specificity */
/* SPECIFICITY 0/1/0/0 */
#id {
background-color: green
}
<article>
<div id="id">
<div class="class">
<section>
<div>
</div>
</section>
</div>
</div>
</article>
/*demo purposes*/
body {margin: 0;padding: 0}
div,article {min-height: 200px;height: 100%;width: 100%}
/*CSS Specificity */
/* SPECIFICITY 0/0/1/0 */
.class {
background-color: yellow
}
<article>
<div id="id">
<div class="class">
<section>
<div>
</div>
</section>
</div>
</div>
</article>
/*demo purposes*/
body {margin: 0;padding: 0}
div,article {min-height: 200px;height: 100%;width: 100%}
/*CSS Specificity */
/* SPECIFICITY 0/0/0/1 */
section {
background-color: blue
}
<article>
<div id="id">
<div class="class">
<section>
<div>
</div>
</section>
</div>
</div>
</article>
/*demo purposes*/
body {margin: 0;padding: 0}
div,article {min-height: 200px;height: 100%;width: 100%}
<article>
<div id="id">
<div class="class">
<section>
<div style="background-color:red">
<!--SPECIFICITY 1/0/0/0 -->
</div>
</section>
</div>
</div>
</article>
/*demo purposes*/
body {margin: 0;padding: 0}
div,article {min-height: 200px;height: 100%;width: 100%}
/*CSS Specificity */
/* SPECIFICITY 1/0/0/1 */
section > div {
background-color: purple !IMPORTANT
}
<article>
<div id="id">
<div class="class">
<section>
<div style="background-color:red">
<!--SPECIFICITY 1/0/0/0 -->
</div>
</section>
</div>
</div>
</article>
问题内容: with open(“games.txt”, “w”) as text_file: print(driver.current_url) text_file.write(driver.current_url + “\n”) 我现在正在使用此代码,但是当它写入文件时,它将覆盖旧内容。我如何能简单地添加它而不删除已经存在的内容。 问题答案: 而不是使用(附加)功能模式:
问题内容: 使用node.js覆盖大型(2MB +)文本文件中的行的最佳方法是什么? 我目前的方法涉及 将整个文件复制到缓冲区中。 通过换行符()将缓冲区拆分为一个数组。 通过使用缓冲区索引覆盖行。 与连接后,用缓冲区覆盖文件。 问题答案: 首先,您需要搜索行的起点和终点。接下来,您需要使用一个函数来替换该行。我使用我的一个库来解决第一部分的问题:Node- BufferedReader 。
问题内容: 覆盖文件中特定行的最佳方法是什么?我基本上想在文件中搜索字符串’@parsethis’,然后用其他东西覆盖该行的其余部分。 问题答案: 如果文件不是太大,最好的方法可能是使用file()将文件读入行数组,在行数组中搜索您的字符串并编辑该行,然后将implode()返回一起将其fwrite()返回文件。
我正在尝试使用JSCH将两个文件上载到带有SFTP的服务器上。如果目录是空的,上传文件很好,但我想一遍又一遍地上传同一个文件(只是在里面改变一个id),但我不知道如何做到这一点。JSch中有一些名为OVERWRITE的静态参数,但我无法找到如何使用它。 这是我当前的代码:
问题内容: (这是在Chrome扩展程序中使用内容脚本) 我需要覆盖网页标记为的某些CSS属性。这可能吗? 例如,如果我想摆脱标记为重要的边框: 问题答案: 干得好: 元素对象的方法使您可以传递表示优先级的第三个参数。因此,您要用自己的!important值覆盖!important值。据我所知,不可能用jQuery设置!important优先级,因此您唯一的选择是内置方法。
问题内容: 现在,我正在尝试用我的LESS代码在CSS3中执行此操作: 但是,LESS编译时将输出以下内容: 有没有办法告诉LESS不要以这种方式编译它并正常输出它? 问题答案: 使用[转义字符串(也称为转义值): 另外,如果您需要将Less Math与转义字符串混合使用: 编译为: 默认情况下,这作为“少”将值(转义的字符串和数学结果)连接在一起时起作用。