在本文中,我们将详细介绍asp.net–删除了css类还有效果的各个方面,并为您提供关于删除无用的css的相关解答,同时,我们也将为您带来关于ASP.NETCore基础知识(三)Program.cs类
在本文中,我们将详细介绍asp.net – 删除了css类还有效果的各个方面,并为您提供关于删除无用的css的相关解答,同时,我们也将为您带来关于ASP.NET Core 基础知识(三) Program.cs类、ASP.NET Core 基础知识(四) Startup.cs类、ASP.NET CSS CSS语法问题中的类与CSSClass的区别、asp.net – asp:Button CssClass属性没有将CSS类设置为我指定的类的有用知识。
本文目录一览:- asp.net – 删除了css类还有效果(删除无用的css)
- ASP.NET Core 基础知识(三) Program.cs类
- ASP.NET Core 基础知识(四) Startup.cs类
- ASP.NET CSS CSS语法问题中的类与CSSClass的区别
- asp.net – asp:Button CssClass属性没有将CSS类设置为我指定的类
asp.net – 删除了css类还有效果(删除无用的css)
<link href="~/Styles/Site.css" rel="stylesheet" type="text/css" />
我在页面中只添加了一个(上面)样式表.我有按钮作为菜单,CssClaas设置为mbt.如果我从按钮标签中删除CssClass =“mbt”,我将看到完全没有样式的按钮.
<asp:Button ID="mHome1" runat="server" Text="Home" CssPostBackUrl="~/Default.aspx"/>
但我已经从Styles / Site.css中删除了mbt.我现在整个项目都没有mbt类,但它的效果仍然存在.我试图重建项目并重新启动visual-studio,但它的效果不会有任何影响.怎么样?为什么?
解决方法
对于大多数浏览器,您可以通过单击Shift-F5或Ctrl-F5强制重新加载所有文件.
根据我的经验,我在使用Google Chrome时遇到了与缓存相关的问题.
在Internet Explorer中,有一个有用的选项(在Internet选项 – >常规选项卡 – >浏览历史记录 – >设置),您可以在每次加载页面时告诉浏览器检查文件的较新版本.在开发Web应用程序时,此设置特别有用.
在Firefox中,您可以在“选项”对话框的“高级” – >“高级”下找到这些设置.网络.
ASP.NET Core 基础知识(三) Program.cs类
ASP.NET Framework应用程序是严重依赖于IIS的,System.Web 中有很多方法都是直接调用的 IIS API,并且它还是驻留在IIS进程中的。而 ASP.NET Core 的运行则是一个完全独立的控制台程序,是在.NET Core 控制台程序下调用特定的库,它并不是必需在 IIS内部托管且并不需要IIS来启动运行,ASP.NET Core应用程序拥有一个内置的 Self-Hosted(自托管)的Web Server(Kestrel服务器),用来处理外部请求。 不管是托管还是自托管,都离不开Host(宿主)。在ASP.NET Core应用中通过配置并启动一个Host来完成应用程序的启动和其生命周期的管理。 而Host的主要的职责就是Web Server的配置和Pilpeline(请求处理管道)的构建。(有关Host的具体介绍会在ASP.NET Core 基础知识(七)Host介绍)。
对于一个控制台程序来说,它的入口点便是 Program 中的 Main
方法,ASP.NET Core 程序自然也不例外,因此Program.cs的主要作用是创建和设置Host。下面我们来看一下Host的创建过程。
Asp.Net Core的入口文件Program.cs。
public class Program
{
public static void Main(string[] args)
{
CreateWebHostBuilder(args).Build().Run();
}
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>();
}
从上面代码我们知道了CreateDefaultBuilder用来创建主机(详情会在ASP.NET Core 基础知识(七)Host介绍),创建完Host之后调用了UseStartup<Startup>(),那Startup是干什么的,在ASP.NET Core 基础知识(四) Startup.cs类介绍。
ASP.NET Core 基础知识(四) Startup.cs类
ASP.NET Core应用程序需要一个启动类,按照约定命名为Startup
。在 Program
类的主机生成器上调用 Build
时,将生成应用的主机, 通常通过在主机生成器上调用 WebHostBuilderExtensions.UseStartup<TStartup> 方法来指定 Startup
类。您可以为不同的环境定义不同的Startup
类,并在运行时选择适当的Startup
类。通俗的讲,ASP.NET Core应用程序启动的时候将会根据当前的运行环境(生产环境(Production)或者开发环境(Development))自动选择启动类。比如在一个ASP.NET Core应用程序中,具有两个启动类Startup
和StartupDevelopment
,那么当我们的启动环境设置为开发环境的时候,启动时将会搜索启动程序集,优先使用StartupDevelopment
这个带有Development后缀的启动类。具体将在ASP.NET Core 基础知识(十一)环境介绍,这里只介绍Startup.cs的作用。
startup.cs的默认代码如下
public class Startup
{
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public IConfiguration Configuration { get; }
// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseMvc();
}
}
Startup类有两个方法ConfigureServices(可选)和Configure(必选),主机提供 Startup
类构造函数可用的某些服务。 应用通过 ConfigureServices
添加其他服务。 然后,主机和应用服务都可以在 Configure
和整个应用中使用。
1、ConfigureServices
方法介绍
(1)特点
-
- 可选。
- 在
Configure
方法配置应用服务之前,由主机调用。 - 其中按常规设置配置选项。(将在ASP.NET Core 基础知识(九)Configuration介绍)
(2)作用:将服务添加到服务容器,使其在应用和 Configure
方法中可用。 服务通过依赖关系注入或 ApplicationServices 进行解析。
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<ApplicationDbContext>(options =>
options.UseSqlServer(
Configuration.GetConnectionString("DefaultConnection")));
services.AddDefaultIdentity<IdentityUser>()
.AddDefaultUI(UIFramework.Bootstrap4)
.AddEntityFrameworkStores<ApplicationDbContext>();
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
// Add application services.
services.AddTransient<IEmailSender, AuthMessageSender>();
services.AddTransient<ISmsSender, AuthMessageSender>();
}
2、Configure方法介绍
(1)作用:Configure 方法用于指定应用响应 HTTP 请求的方式。 可通过将中间件组件添加到 IApplicationBuilder 实例来配置请求管道。(中间件具体将在ASP.NET Core 基础知识(六)中间件介绍)
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Error");
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseCookiePolicy();
app.UseMvc();
}
每个 Use
扩展方法将一个或多个中间件组件添加到请求管道。 例如,UseMvc
扩展方法将路由中间件添加到请求管道,并将 MVC 配置为默认处理程序。
ASP.NET CSS CSS语法问题中的类与CSSClass的区别
<asp:GridView Css
和
<table>
它与CSS如何定义相关?
例如,使用CssClass,我可以(我想)编写CSS如下:
.someclass {font-family:"arial"; background-color:#FFFFFF; width: 100%; font-size: small;} .someclass th {background: #7AC142; padding: 5px; font-size:small;}
但是使用类,似乎这种语法不起作用,从http://www.w3.org/TR/css3-selectors/#class-html开始,我将不得不像下面这样写:
.someclass {font-family:"arial"; background-color:#FFFFFF; width: 100%; font-size: small;} th.someclass {background: #7AC142; padding: 5px; font-size:small;}
有人可以看出这是正确的方法,或者如果它们都是正确的,但ASP.Net中的类和CssClass之间有区别吗?
UPDATE
好的,看起来像他们是一样的东西….所以,上面的语法都正确使用类或cssclass,因为它们似乎不是。
解决方法
基本上,对于大多数意图和目的,它们是一样的。当您将CssClass属性设置为某些字符串(如“someclass”)时,WebControl将呈现的html将为class =“someclass”。
编辑:您编写的CSS选择器都是“正确的”,但它们做了两件事情。 “.someclass th”匹配具有“someclass”类的元素的任何后代th元素。第二个匹配具有“someclass”类的第th个元素本身。
希望很清楚无论您为元素指定类的方式(使用ASP.Net的CSSClass或仅设置类),您的CSS选择器都将执行相同的操作。他们与ASP.Net没有任何关系。
asp.net – asp:Button CssClass属性没有将CSS类设置为我指定的类
我有一个按钮.
< asp:Button ID =“btnMyButton”runat =“server”CssClass =“MyButton”CausesValidation =“False”Text =“ClickMe”/>
它的样式存储在我正在使用的样式表中,因为页面中的其他元素使用此样式表中的样式.
这是我定义样式的方式:
.MyButton { font-size: 80pt; color: red; }
我还尝试了一些其他方法来专门指向这个类(包括从包含元素专门引用它)但无济于事:
输入[type =“submit”].MyButton {
table.MyTable> tbody> tr> td> input.MyButton {
我可以在Google Chrome的开发者工具栏中看到它甚至没有覆盖我设置的样式,它们根本就不存在.
当我查看页面源代码时,我发现ASP.NET生成的输入控件甚至没有使用我的类(它使用了一个名为submitBtn的东西,我自己也没有在任何地方定义过).如果我在使用Google Chrome的开发人员工具时将此类更改为我的类,我的样式将按照我的预期应用,因此我知道它们可用.我只是不知道他们为什么不习惯开始.
我可以使用input [type =“submit”] {全局设置所有按钮的样式,但我试图设置特定的样式,而不是使用内联样式定义.
请指教.
编辑:
我发现如果我在我的css文件submitBtn中调用我的css类,它将应用我设置的样式.但是,由于所有的ASP.Net按钮似乎都想使用这个submitBtn css类,为了为每个按钮设置一个独特的样式,我必须用跨度或其他东西包装它们,并以这种方式专门设置按钮样式.
我仍然想知道为什么它不允许我设置用于ASP.Net按钮的样式类的名称.
我已更新了问题标题,以便更清晰.
解决方法
<asp:Button ID="btnMyButton" runat="server" CausesValidation="false" Text="ClickMe"/>
要么
.MyButton { font-size:80pt; color:Red; } <asp:Button ID="btnMyButton" runat="server" CausesValidation="false" Text="ClickMe" Css/>
对我来说很好.
干杯
今天关于asp.net – 删除了css类还有效果和删除无用的css的讲解已经结束,谢谢您的阅读,如果想了解更多关于ASP.NET Core 基础知识(三) Program.cs类、ASP.NET Core 基础知识(四) Startup.cs类、ASP.NET CSS CSS语法问题中的类与CSSClass的区别、asp.net – asp:Button CssClass属性没有将CSS类设置为我指定的类的相关知识,请在本站搜索。
本文标签: