GVKun编程网logo

asp.net – 删除了css类还有效果(删除无用的css)

14

在本文中,我们将详细介绍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 – 删除了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 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.cs类

ASP.NET Core应用程序需要一个启动类,按照约定命名为Startup在 Program 类的主机生成器上调用 Build 时,将生成应用的主机, 通常通过在主机生成器上调用 WebHostBuilderExtensions.UseStartup<TStartup> 方法来指定 Startup 类。您可以为不同的环境定义不同的Startup类,并在运行时选择适当的Startup类。通俗的讲,ASP.NET Core应用程序启动的时候将会根据当前的运行环境(生产环境(Production)或者开发环境(Development))自动选择启动类。比如在一个ASP.NET Core应用程序中,具有两个启动类StartupStartupDevelopment,那么当我们的启动环境设置为开发环境的时候,启动时将会搜索启动程序集,优先使用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.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,因为它们似乎不是。

解决方法

ASP.Net CssClass是一个围绕css“class”说明符的抽象包装器。

基本上,对于大多数意图和目的,它们是一样的。当您将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.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.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类设置为我指定的类的相关知识,请在本站搜索。

本文标签: