1.ASP.NET 引用CSS


1.Site.master里面设置webopt
<webopt:bundlereferencerunat="server"path="~/Content/css"/>
2.在Bundle.config里面绑定具体CSS
<?xml version="1.0" encoding="utf-8" ?>
<bundles version="1.0">
<styleBundle path="~/Content/css">
<include path="~/Content/bootstrap.css" />
<include path="~/Content/Site.css" />
</styleBundle>
</bundles>
3.当然也可以直接在具体页面的Head内引用外部CSS
<link type="text/css" rel="stylesheet" href=" 外部样式表地址 " />

2.ASP.NET中各种CSS样式写法


1.写在style内

<asp:Label ID="LabelInf" runat="server" Text="工作辛苦了,喝杯水吧。"  style="background-color:#222222;color:#3A87AD; height:38px;text-align:center;font-size:30px;padding:4px 4px 4px 4px;"></asp:Label>
    2某些样式可以直接设置
<asp:LabelID="Label1"runat="server"Text="工作辛苦了,喝杯水吧。"ForeColor="#3A87AD"BackColor="#222222"Height="38px"></asp:Label>
    3.CssClass
<asp:TextBoxID="TextProjectId"runat="server"CssClass="Default input"Width="12%"Height="100%"placeholder="项目ID nchar10"ValidationGroup="2"></asp:TextBox>
    4.class
<asp:ButtonID="BackProject"runat="server"Text="Project"class="btn btn-primary"style="width:120px;"OnClick="BackProject_Click"CausesValidation="false"></asp:Button>
PS:如果CssClass和class同时存在,CssClass优先。 
        在ASP.NET控件上直接设置的样式属性,都会被转换为CSS样式。
        ASP.NET控件内部的样式提倡使用Cssclass
 

3.在ASP.NET后台修改 html控件css


1.在前台,将控件设置为runat=server

<divstyle="width:100%;"id="div_hz"runat="server">

2.在后台进行修改

div_hz.Style["height"]="480px";

3.针对Repeater、GridView等控件,需要用FindControl

    /// <summary>
/// 数据将在被绑定到 Repeater 控件中的某一项之后但尚未呈现在页面上之前进行修改。
/// 2016-4-26 15:55:05 EMS 在不同情况下屏蔽审核按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void RptrReview_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
RepeaterItem ri = e.Item;
Label lblProgress = (Label)ri.FindControl("LblProgress");
#region 设置不同审核进度下的div边框样式
if (lblProgress.Text.ToString() == "审核通过")
{
HtmlControl rptrItemDiv = (HtmlControl)ri.FindControl("RptrItemDiv");
rptrItemDiv.Attributes.Add("style", "border-color:#76B610");
}
else if (lblProgress.Text.ToString() == "审核中")
{
HtmlControl rptrItemDiv = (HtmlControl)ri.FindControl("RptrItemDiv");
rptrItemDiv.Attributes.Add("style", "border-color:#D47005");
}
#endregion
#region 在不同情况下屏蔽审核按钮
LinkButton lnkBtnPass = (LinkButton)ri.FindControl("LnkBtnPass");
LinkButton lnkBtnBan = (LinkButton)ri.FindControl("LnkBtnBan");
if(Session["FEmpID"].ToString()=="")
{
lnkBtnPass.Visible = (lblProgress.Text.ToString() != "信息化部审核中");
}
else if(Session["FEmpID"].ToString()=="")
{
lnkBtnPass.Visible = true;
}
else if(Session["FDepID"].ToString()=="")//IT
{
lnkBtnPass.Visible = (lblProgress.Text.ToString() == "信息化部审核中");
}
else if(Session["FStaffCategory"].ToString()!="")
{
lnkBtnPass.Visible = (lblProgress.Text.ToString() == "部门审核中");
}
else
{
lnkBtnPass.Visible = false;
}
#endregion
}
...
}

4.ASP.NET 修改字体引用,拯救google字体


1.前两天发现网页刷新时用很长的时间在请求 fonts.googleais.com,
2.360推出了 字体加速服务 fonts.useso.com
3.在Bundle.config查看并确认主要引用的css文件
4.在Content文件夹下找到对应css文件
5.将css文件中的 fonts.googleapis.com,替换为fonts.useso.com
 PS:最近发现拯救没有什么效果啊。

5.CSS样式表覆盖顺序


1.样式表的元素选择器选择越精确,则其中的样式优先级越高:
id选择器指定的样式 > 类选择器指定的样式 > 元素类型选择器指定的样式
 
2. 对于相同类型选择器制定的样式,在样式表文件中,越靠后的优先级越高
注意,这里是样式表文件中越靠后的优先级越高,而不是在元素class出现的顺序。比如.class2 在样式表中出现在.class1之后:

.class1 {
color: black;
}
.class2 {
color: red;
}
而某个元素指定class时采用 class="class2 class1"这种方式指定,此时虽然class1在元素中指定时排在class2的后面,但因为在样式表文件中class1处于class2前面,此时仍然是class2的优先级更高,color的属性为red,而非black。
 
3. 如果要让某个样式的优先级变高,可以使用!important来指定:
.class1 {
color: black !important;
}
.class2 {
color: red;
}
此时class将使用black,而非red。
因为IE6、7、8 对于!important的支持不完全,所以提倡少使用!important,当然使用它也不会影响性能。

ASP.NET CSS 小结的更多相关文章

  1. CSS 小结笔记之解决flex布局边框对不齐

    在使用flex 进行伸缩布局的时候,经常会给子盒子设置边框,这时经常会出现上下边框对不齐的情况.本篇文章来探讨并解决这个问题. 具体出现的问题如下图所示 具体代码如下 <!DOCTYPE htm ...

  2. CSS 小结笔记之浮动

    在css中float是一个非常好用的属性,float最基本用法是用来做文字环绕型的样式的. 基本用法:float:left | right 例如 <!DOCTYPE html> <h ...

  3. Asp.Net初学小结 判断数组中是否有重复的数据

    Asp.Net初学小结   第一章   1.搭建Asp.net开发环境   1).net FrameWork(VS) 2)IIS(xp:5.1,2003:6.0,vista:70,win7:7.5)  ...

  4. 2015第10周四-CSS小结

    这两天做前台页面发现个人在CSS前端方法很多基础知识都忘了,晚上又搜索学习了下,把相关内容摘录总结. CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明. selector {declara ...

  5. CSS小结

    一.1. css必须写在<head></head>里面的<style></style>里面 2. css 由选择器 + 规则组成, 规则由属性和值组成 ...

  6. Asp.Net初学小结

    第一章   1.搭建Asp.net开发环境   1).net FrameWork(VS) 2)IIS(xp:5.1,2003:6.0,vista:70,win7:7.5) C:\Windows\Mic ...

  7. CSS 小结笔记之图标字体(IconFont)

    本篇主要介绍一种非常好用的图标大法——图标字体(IconFont). 什么是图标字体?顾名思义,它是一种字体,只不过这个字体显示的并不是具体的文字之类的,而是各种图标. 网站上经常会用到各种图标,之前 ...

  8. CSS 小结笔记之em

    1.为什么使用em em也是css中的一种单位,和px类似.很多人会疑惑为什么有了px之后还要使用em,而且em使用起来相对于px来讲比较麻烦. em主要是应用于弹性布局,下面给出一个小栗子说明em的 ...

  9. CSS 小结笔记之伸缩布局 (flex)

    CSS flex 是一种伸缩布局,之前块级元素布局在同一行,可以通过display或position或float来实现,而本篇介绍一个新的方法——flex(弹性布局). flex 为和模型布局提供了极 ...

随机推荐

  1. .NET方面的框架的整理和总结

    自从学习.NET以来,优雅的编程风格,极度简单的可扩展性,足够强大开发工具,极小的学习曲线,让我对这个平台产生了浓厚的兴趣,在工作和学习中也积累了一些开源的组件,就目前想到的先整理于此,如果再想到,就 ...

  2. 启动mysql遇到1067问题

    最近安装sql的时候,出现一些问题:启动的时候出现1067错误 在网上找了很多方法,比如删除mysql安装目录下date的bdata1, ib_logfile0, .. 等innodb的文件, 比如修 ...

  3. linux目录结构 简单讲解

    1./- 根每一个文件和目录从根目录开始.只有root用户具有该目录下的写权限.请注意,/root是root用户的主目录,这与/.不一样 2./bin中 - 用户二进制文件包含二进制可执行文件.在单用 ...

  4. 捋一捋js面向对象的继承问题

    说到面向对象这个破玩意,曾经一度我都处于很懵逼的状态,那么面向对象究竟是什么呢?其实说白了,所谓面向对象,就是基于类这个概念,来实现封装.继承和多态的一种编程思想罢了.今天我们就来说一下这其中继承的问 ...

  5. Windows系统上FFMpeg-PHP的使用

    这几天做项目,其中一个需求是用户上传视频文件到服务器,然后服务器自动截取该视频的一帧作为该视频对应的缩略图,服务器端语言采用php编写,找了半天资料,发现ffmpeg-php可以满足该需求,所以下面简 ...

  6. hdu1496 打表

    通常可以想到直接四个for枚举,但是会超时.就算只用三个for也很危险.可以用打表的方法将时间复杂度降到O(n^2),注意到x1,x2,x3,x4的取值区间是关于零对称的,因此可以只考虑正整数部分,洗 ...

  7. 记录一个 spring cloud 配置中心的坑,命令行端口参数无效,被覆盖,编码集问题无法读取文件等.

    spring cloud 配置中心 结合GIT , 可以运行时更新配置文件.发送指令让应用重新读取配置文件. 最近在测试服务器实现了一套,结果CPU 实用率暴增,使用docker compose启动 ...

  8. Service IP 原理 - 每天5分钟玩转 Docker 容器技术(137)

    Service Cluster IP 是一个虚拟 IP,是由 Kubernetes 节点上的 iptables 规则管理的. 可以通过 iptables-save 命令打印出当前节点的 iptable ...

  9. linux链接

    ( 1 )软连接可以跨文件系统,硬连接不可以 ( 2 )硬连接不管有多少个,都指向的是同一个 I 节点,会把结点连接数增加,只要结点的连接数不是 0 ,文件就一直存在不管你删除的是源文件还是连接的文件 ...

  10. 为什么使用正则test( )第一次是 true,第二次是false?

    今天朋友问我一个问题,我现在需要多次匹配同一个内容,但是为什么我第一次匹配,直接是 true,而第二次匹配确实 false 呢? var s1 = "MRLP"; var s2 = ...