问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

CSS动态换肤技术

发布网友 发布时间:2022-04-06 11:36

我来回答

4个回答

懂视网 时间:2022-04-06 15:57

本篇文章给大家带来的内容是关于怎么利用纯CSS实现页面换肤?CSS实现换肤方法,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

微信截图_20181010092658.png

1.同一类型的属性要写在同一个样式里面。
例如:background-size和background要在同一个样式里面,具体看下文代码。

2.关于伪类的使用
:after和:before,是在某个元素下新生成的元素,可以想象成是这个元素的兄弟元素。元素伪类继承这个元素的所有属性及样式,也可以单独设置样式。:after和:before伪类一定含有content属性。

3.:target伪类
:target伪类是个冷门的伪类,它必须配合锚点使用,效果是如果该锚点被选中,这个锚点渲染:target伪类定义的样式。

4.阴影的使用
无论是text-shadow还是box-shadow都可以设置多阴影,代码里面有用例。

5.z-index属性
该属性只有定位为相对定位和固定定位的元素有z-index属性,即position:relative/absolute。

HTML代码:

<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title></title>
 <link rel="stylesheet" href="css/style.css" />
 </head>
 <body>
 <img class="bg bg1" id="bg1" src="img/1.jpg"/>
 <img class="bg bg2" id="bg2" src="img/2.jpg"/>
 <img class="bg bg3" id="bg3" src="img/3.jpg"/>
 <div class="father">
  <a href="#bg1">背景一</a>
  <a href="#bg2">背景二</a>
  <a href="#bg3">背景三</a>
 </div>
 </body> 
</html>

css代码:

*{
 margin: 0;
 padding: 0;
}
html,body{
 height: 100%;
 overflow: hidden;
}
img{
 position: absolute;
 height: 100%;
 width: 100%;
}
.father{
 position: absolute;
 z-index: 99;
 width: 550px;
 top: 40%;
 left: 50%;
 transform: translate(-50%,-50%);
}
a{ 
 cursor: pointer;
 position: absolute;
 text-align: center;
 text-decoration: none;
 width: 150px;
 height: 200px;
 float: left;
 margin-right: 50px;
 line-height: 200px;
 border-radius: 20px;
}
a:nth-child(1){
 background: lightblue;
 left: 0px;
}
a:nth-child(2){
 background: lightcoral;
 left: 200px;
}
a:nth-child(3){
 background: #cec;
 left: 400px;
}
a:after{
 content: '';
 width: 125px;
 height: 125px;
 border: 3px solid white;
 position: absolute;
 top: -60px;
 left: 9px;
 opacity: 0.7;
 border-radius: 50%;
}
/*background-size必须和background在同一个样式元素内设置样式*/
a:nth-child(1):after{
 background: url(../img/1.jpg);
 background-size: 80%;
}
a:nth-child(2):after{
 background: url(../img/2.jpg);
 background-size: 80%;
}
a:nth-child(3):after{
 background: url(../img/3.jpg);
 background-size: 80%;
}
a:hover:after{
 opacity: 0.9;
}
a:hover{
 color: white;
 font-family: "微软雅黑";
 /*多阴影,用的不多,冷门小知识*/
 text-shadow: 0 0 3px blue,
   0 0 9px darkturquoise,
   0 0 15px lightcoral;
}
/*:target伪类必须配合锚点使用,效果是锚点被选中时的样式*/
img:target{
 z-index: 30;
}
/*:not伪类*/
img:not(:target){
 z-index: 0;
}

最后的效果大家自己试一试吧,注意我的页面是使用图片做背景,背景图的引入链接和自己的文件结构有关,url记得改。

如果你能看到最后,再分享一个很常用的知识:
父元素里面的子元素浮动,使父元素出现高度塌陷的时候,我们一般都会给父元素添加:after伪类,设置清除浮动,附上我的万能清除法。

万能清除法

父元素:after{
 content: "";/*有时会用content:"."*/
 clear:both;
 display:block;
 height:0;
 overflow:hidden;
 visibility:hidden;
}

热心网友 时间:2022-04-06 13:05

asp.net页面???客户端页面的实现跟服务器的运作是两回事,,,不关asp.net的事,给你一个代码,实现动态加载css文件,那样就不需要太过麻烦了。。
你可以通过删除原来的document.getElementsByTagName("link")[?],加载一个新的,就可以实现换肤了,

functionloadCss(file){
varhead=document.getElementsByTagName('head').item(0);
css=document.createElement('link');
css.href="../css/mi_"+file+".css";
css.rel='stylesheet';
css.type='text/css';
css.id='loadCss';
head.appendChild(css);
}

我这只有九行代码,(*^__^*) 嘻嘻……

热心网友 时间:2022-04-06 14:23

哇噻这么多代码,头疼,为什么不用jquery呢?

用jquery再引入个jQuery的cookie插件,10行代码就可以了

热心网友 时间:2022-04-06 15:58

可能没有学到JQUERY吧!呵,你把你的十行代码写出来别
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
电脑如何一键还原系统电脑一键还原怎么操作 神舟笔记本电脑怎么重新设置神舟战神bios恢复出厂设置 神舟电脑恢复出厂设置神舟战神怎么恢复原厂系统 水泥楼梯如何铺木楼梯 家里面楼梯是水泥的不想铺地毯或者地砖还能铺什么 楼梯的水泥台阶上可以铺地板革吗 手机腾讯会议共享屏幕播放视频没声 腾讯会议共享屏幕没声音怎么办 微信寄快递怎么取消订单_取消订单方法介绍 300兆宽带用什么路由器好? 丁大毛钵仔糕怎么样 在白云区学钵仔糕学多久学习钵仔糕的正宗做法 微信支付冻结 别人的实名制 怎么注销? 微信实名是别人的,被他冻结了微信支付,该怎么办?微信实名是别人的,他当时给我的朋友用,后面我朋友的_百度问一问 我的微信是用朋友的身份证绑定的然后现在微信支付被冻结了,如何解除? 英语翻译:为了让我未来的生活更加美好,我现在就要好好学习。 《我将要好好学习》 英语作文 微信支付被实名人冻结了,实名人不是自己,联系不上实名人,限额了还,没法儿注销实名信息,怎么解决? 我想好好学习英语,但不知道该怎么下手,我是初中生,我小学英语基础差,初中连课文都念不完,我该咋办 微信支付被冻结实名认证不是自己的怎么办? “为了实现自己的理想我一定要好好学习”翻译成英语 微信支付被冻结 绑定的身份证银行卡不是我的 需要怎么解冻 请帮助 如何好好学习英语 我想考好的大学,所以我要好好学习天天向上 的英语翻译 微信支付被冻结可以注销微信支付吗 …微信支付被冻结了 我可以注销微信支付吗 微信被盗了可以报警吗? 但是为了多学一项技能,我必须好好学习英语.最后,一样我的英语四级顺利通过。的英语翻译 我一定要好好学习的英文怎么写 对英语没有兴趣怎么办,但是我要学 所以我要好好学习医学。用英语怎么写? 在新的一学期里,我要好好学习,天天向上用英语怎么说? 想学做家常菜,值得去烹饪兴趣班吗? 资中二中附近有什么好吃的东西? 2017春节带孩子去哪里玩最好 什么是前壁后壁,而我的宫腔内中上部位属 子宫前位是什么意思大小形态正常宫腔可见宽约0.5cm 液性区双附件区未见明显占? 我的宫腔粘连严重么 如何从苹果电脑传输文件到苹果手机? 苹果手机怎么从电脑上传文件到手机? 鄂州市退伍军人政府安置无编制怎么交养老保险 个人城镇居民交社保费在鄂州哪银行交? 抖音头像有个+然后点击后√是什么意思? 2020年鄂州社保哪个银行交? IE浏览器怎么设置当鼠标放在页面上即显示关闭符号即可关闭 有的抖音头像右下角打蓝对勾是啥意思? 怎么设置IE上点击鼠标右键 抖音视频放到最后怎么显示抖音头像 湖北省鄂州市临空区新庙镇池湖社区的养老保险该怎么缴费 IE浏览器怎么设置鼠标拖放搜索的功能 进入IE浏览器以后,鼠标右击不起作用,该怎么办? 鄂州灵活就业人员养老保险