使用CSS设置默认字体

时间:2013-08-08 05:29:34

标签: css

我有一个包含此代码的文件(CSS / FontStyle.css):

.courier {
font-family: courier;
}

我的.aspx文件包含以下代码:

<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Tut1.aspx.cs" Inherits="Rtw.Tut1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="StatusLabel" runat="server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="MainContent" runat="server">

    <link rel="stylesheet" href="CSS/FontStyle.css"/>

    <h2>Unsigned Vs Signed Integers</h2>
//lots of text is below here..

然而字体仍然是新罗马时间。我可以使用同一文件夹中的其他.css文件查找,不知道为什么这个文件不起作用?

提前感谢。

5 个答案:

答案 0 :(得分:31)

尝试更改

.courier {
font-family: courier;
}

* {
    font-family: courier;
  }

原因与@koala_dev提到的相同。 “.courier”使其仅适用于“courier”类的元素,并且从您显示的代码中,没有任何内容标记有该类名,因此该字体未被应用。

然而,*选择器会将CSS font-family规则应用于所有元素的文本。

请注意,CSS使用特异性优先级,如果您有任何其他CSS选择器适用于相同的元素,但具有比*更具体的标识符,那么这些CSS规则中指定的任何字体系列都将覆盖*选择器指定的一般规则。

更新(这在CSS中被认为是一个坏主意,但可能有所帮助)

如果您无法找到其他CSS规则可能存在冲突的内容,那么您可以使用!important规则覆盖其他规则(除非其他规则也使用它):

* { font-family: courier !important }

警告

然而,使用!important被认为是不好的做法,但是在您的情况下可能很有用,因为冲突的CSS规则似乎丢失了,您只需要一些有用的东西。

!important的作用是干扰CSS通常的“级联”优先级规则。例如,h2元素在下面的考试中将具有font-family courier,即使通常的结果是arial(因为更具体的选择器)。更具体的选择器h2会被不太具体的选择器*覆盖,因为*规则已应用!important谓词。

* { font-family: courier !important }
h2 { font-family: arial }

有关详细信息,请阅读此内容,然后继续阅读以下链接:

  

...使用!important重写你的CSS值可能会被高度滥用   使得混乱和难以维护CSS。不幸的典型用途   案件是这样的:

     
      
  1. 为什么我的FRAGGLE ROCKING CSS无效?!?!
  2.   
  3. (使用!重要规则)
  4.   
  5. 好的,现在正在运作
  6.         

    然后下一个人出现并试图做出新的改变。他试着   改变一些现有的CSS规则,但现在他的改变并没有表现出来   他们应该如何。他将这个问题追溯到了!重要的规则,   然后有一个选择。他可以尝试删除那些并尝试获取   事情回到正轨,或者添加更多自己的东西来对抗它们   完成他的改变。因为他可能不知道为什么那些   !首先添加了重要的规则,他可能会选择   第二种选择,因为害怕打破其他地方的东西   网站他不知道。因此恶性循环就开始了。

继续阅读:http://css-tricks.com/when-using-important-is-the-right-choice/

答案 1 :(得分:6)

如果要将字体设置为页面使用的默认字体,那么CSS规则适用于类名courier

body {
    font-family: "courier";
}

答案 2 :(得分:4)

Courier是Macintosh / Unix,而Courier New是微软的版本。我会尝试设置两者,以防万一(大多数人认为是好的做法);你应该替换:

.courier {
    font-family: courier;
}

body {
    font-family: "Courier New", "Courier", monospace;
}

请记住,如果您的CSS无法正常工作,DOM检查器(例如Chrome Inspect或Firefox Firebug)将帮助您排除故障 - 尤其是当您需要确定某些内容是否被覆盖时。

只是我的2¢,希望它有所帮助。

答案 3 :(得分:2)

A)您是否在任何地方申请快递班。如果没有,并且不想,则使用body作为选择点,它也将影响其所有子元素。

B)可能有除您之外的其他类可能有其他css规则。因此,像我一样放!important将确保浏览器听取此css规则。

body {
    font-family: courier !important;
}

答案 4 :(得分:0)

你忘了申请上课了。

.courier {
font-family: "courier";
}

HTML:

<h2 class='courier'>Unsigned Vs Signed Integers</h2>

也许这有帮助。

.courier {
    font-family: "courier" !important;  //Incase if any css conflict occurs
    }

根据您的评论,试试这个

* { font-family: "courier" !important; }. There may be css conflict 
  

*代表所有HTML元素。

     

! important喜欢绝对,永远不会改变。

同时检查是否有任何类似的CSS,如果你发现任何类似的东西,请删除!important。