
发表日期: 2021-04-21 12:55:05 浏览次数:110
遵化市企业微信公众号小程序开发公司、遵化市企业网页设计方案、遵化市做网站开发价格、遵化市微信公众号制作运营报价明细表、遵化市网站设计公司费用、遵化市网站推广大概需要多少钱
遵化市,河北省财政直管县, [1] 河北省直辖县级市,由唐山市代管。地处河北省东北部、燕山南麓,周围由燕山余脉所环绕。四季分明,季风盛行。总面积1521平方千米,下辖2个街道、13个镇、12个乡,常住人口77.67万人(2017年)。
遵化市历史文化源远流长,是联合国地名专家组命名的“千年古县”,有纪年历史2200多年,天宝元年至四年(742—745),在玉田县东北90里设平州买马监(养马机构)。五代后唐,从玉田县划出建遵化县,遵化意为“遵从孔孟之道,教化黎民百姓”。 [2] 遵化头枕燕山,身偎滦水,北倚长城,西眺北京,南临津唐,东通辽沈,境内有世界文化遗产2处(清东陵、古长城),5A级旅游景区1处(清东陵),4A级旅游景区1处(万佛园)。 [3]
遵化市是2019全国营商环境百强县。 [4] 2020年9月,入选河北省食品产业强县(市、区)(创建型)名单。
2018年,遵化市地区生产总值502.73亿元,同比增长8.1%,其中第一产业增加值44.98亿元,同比增长3.2%。第二产业增加值201.65亿元,同比增长7.9%。第三产业增加值256.11亿元,同比增长9.0%。
关于优先级的思考
之前尝试用.feature选择器添加橘黄色背景,但是没有成功。#main-nav a选择器包含了一个ID,覆盖了类选择器(优先级分别为“1,0,1”和“0,1,0”)。有好几种方法可以解决这个问题。下面介绍几种可行的方法。
最快的方法是将!important添加到想要设置的元素的声明上。按代码清单1-7修改相应的声明。
代码清单1-7 方法一
#main-nav a {
color: white;
background-color: #13a4a4;
padding: 5px;
border-radius: 2px;
text-decoration: none;}.featured {
background-color: orange !important; ←---- 将声明设为重要,它便拥有了更高优先级的来源}复制代码这个方法之所以生效,是因为!important注释将声明提升到了更高优先级的来源。这个方法的确简单,但也很低级。它可能解决了眼前的问题,但是会在以后带来更多问题。一旦给很多声明加上!important,要覆盖已设置为important的声明时,该怎么做呢?当给一些声明加上!important时,就会先比较来源,再使用常规的优先级规则。最终会让一切回到起点:一旦引入一个!important,就会带来更多的!important。
那么更好的方法是什么?请不要试图绕开选择器优先级,而是利用它来解决问题。何不提升选择器的优先级呢?将你的CSS修改为代码清单1-8中的代码。
代码清单1-8 方法二
#main-nav a { ←---- 优先级仍然是“1,0,1”
color: white;
background-color: #13a4a4;
padding: 5px;
border-radius: 2px;
text-decoration: none;}#main-nav .featured { ←---- 将优先级提升到“1,1,0”
background-color: orange; ←---- 去掉!important注释}复制代码这个方法也奏效了。现在你的选择器有1个ID和1个类,优先级为“1,1,0”,比#main-nav a(优先级为“1,0,1”)高。因此,橘黄色背景是能够应用到元素上的。
但是这个方法还能改进。不提升第二个选择器的优先级,而是降低第一个选择器的优先级。导航链接元素同时还有一个类:<ul id="main-nav" class="nav">。所以可以修改CSS,通过类名而不是ID来选中元素。如代码清单1-9所示,将选择器里的#main-nav改为.nav。
代码清单1-9 方法三
.nav { (以下7行)将样式表中的“#main-nav”全部改为“.nav”
margin-top: 10px;
list-style: none;
padding-left: 0; } .nav li {
display: inline-block;}.nav a { ←---- 降低第一个选择器的优先级(0,1,1)
color: white;
background-color: #13a4a4;
padding: 5px;
border-radius: 2px;
text-decoration: none;}.nav .featured { ←---- 提升第二个选择器的优先级(0,2,0)
background-color: orange; }复制代码现在你已经降低了这些选择器的优先级。橘黄色背景的优先级足够高,能够覆盖蓝绿色。
通过这些例子可以发现,优先级容易发展为一种“军备竞赛”。在大型项目中这一点尤为突出。通常最好让优先级尽可能低,这样当需要覆盖一些样式时,才能有选择空间。
层叠的第三步,也是最后一步,是源码顺序。如果两个声明的来源和优先级相同,其中一个声明在样式表中出现较晚,或者位于页面较晚引入的样式表中,则该声明胜出。
也就是说,可以通过控制源码顺序,来给特殊链接添加样式。如果两个冲突选择器的优先级相同,则出现得较晚的那个胜出。接下来看第四个方法(如代码清单1-10所示)。
代码清单1-10 方法四
.nav a { (以下9行)让优先级相同(0,1,1)
color: white;
background-color: #13a4a4;
padding: 5px;
border-radius: 2px;
text-decoration: none; } a.featured {
background-color: orange;}复制代码在这个方法里,选择器优先级相同。源码顺序决定了哪个声明作用于特殊链接,最终产生了橘黄色的特殊按钮。
这个方法解决了问题,但也引入了一个潜在的新问题:虽然在nav元素里的特殊按钮看起来正常了,但是如果你想要在页面其他地方,在nav之外的链接上使用featured类呢?最后就会有奇怪的混合样式:橘黄色的背景,但是导航链接没有文本颜色、内边距或者圆角效果(如图1-7所示)。

图1-7 位于nav声明之外的featured类产生了奇怪的效果
代码清单1-11是上图对应的标记代码。有一个元素只被第二个选择器选中,没有被第一个选中,因而没有产生期望的结果。你得决定是否让nav以外的元素拥有橘黄色的按钮样式,如果是,需要确保将所有想要的样式都应用到元素上。
代码清单1-11
nav之外的特殊链接
<header class="page-header"> <h1 id="page-title" class="title">Wombat Coffee Roasters</h1> <nav> <ul id="main-nav" class="nav"> <li><a href="/">Home</a></li> <li><a href="/coffees">Coffees</a></li> <li><a href="/brewers">Brewers</a></li> <li><a href="/specials" class="featured">Specials</a></li> </ul> </nav></header><main> <p> Be sure to check out <a href="/specials" class="featured">our specials</a> ←----nav之外的特殊链接只会有部分样式 </p></main>复制代码
除非网站有其他需求,否则我倾向于方法三(代码清单1-9)。理想状态下,你可以凭经验判断在页面其他地方会出现什么样式需求。也许你知道别处也可能需要一个特殊链接,这种情况下,也许方法四(代码清单1-10)更合适,当然在别处还需要添加一些样式来补充feature类。
正如之前所说,在CSS中最好的答案通常是“这得看情况”。实现相同的效果有很多途径。多想些实现方法,并思考每一种方法的利弊,这是很有价值的。面对一个样式问题时,我经常分两个步骤来解决它。首先确定哪些声明可以实现效果。其次,思考可以用哪些选择器结构,然后选择最符合需求的那个。
遵化市企业微信公众号小程序开发公司、遵化市企业网页设计方案、遵化市做网站开发价格、遵化市微信公众号制作运营报价明细表、遵化市网站设计公司费用、遵化市网站推广大概需要多少钱
服务热线
顶部
备案号: 苏ICP备11067224号
CopyRight © 2011 书生商友信息科技 All Right Reserved
24小时服务热线:400-111-6878 E-MAIL:1120768800@qq.com QQ:1120768800
网址: http://www.768800.com 网站建设:上往建站
关键词: 网站建设| 域名邮箱| 服务器空间| 网站推广| 上往建站| 网站制作| 网站设计| 域名注册| 网络营销| 网站维护|
企业邮箱| 虚拟主机| 网络建站| 网站服务| 网页设计| 网店美工设计| 网站定制| 企业建站| 网站设计制作| 网页制作公司|
400电话办理| 书生商友软件| 葬花网| 调温纤维| 海洋馆运营维护| 北京保安公司| 殡仪馆服务| 殡葬服务| 苏州殡葬一条龙| 朝阳殡葬| 苏州殡葬服务|
欢迎您免费咨询,请填写以下信息,我们收到后会尽快与您联系
服务热线:400-111-6878