CSS基础(一)

1.CSS 的引入方式有哪些?

CSS 的引入方式有以下三种:

  • 行内样式使用style属性引入CSS样式。
<h1 style="color:red;">行内样式引用</h1>
  • 内部样式表在style标签中书写CSS代码。style标签写在head标签中。
<head>
  <style>
    .h1 {
      color:red;
    }
  </style>
</head>
  • 外部样式表CSS代码保存在扩展名为.css的样式表中,HTML文件引用扩展名为.css的样式表。
<link type="text/css" rel="styleSheet"  href="CSS文件路径" />

2.简述CSS选择器的权重计算。

CSS的选择器有三种,按权重大小来讲,依次为 内联>id>class
下面以给h2(二级标题)的颜色设置粉色为例来解释一下各种设置方法。

  • 内联样式:直接在内容后面添加需要的属性(为方便以后的调试和代码的简洁性,最好不要采用这种方式)
<h2 style="color: pink;"></h2>
  • id编号属性:id具有唯一性,一个界面最好把特殊且唯一的部分设置成id模式,比如form表单的内容。
#pink-text {
  color: pink
}
<div id="pink-text">
     <h2></h2>
</div>
  • class类属性:比较广泛的属性方式,描述了不同元素的相同属性。
.pink-text {
  color: pink
}
<div class="pink-text">
     <h2></h2>
</div>

可以看出内联style的优先级是最高的,字体最后显示出来是style样式。

如果此时在不改变基础代码的情况下让字体变成红色,怎么办?
这个时候可以使用important样式设置强属性。它的用法和使用效果如下。

#red-text {
  color: red !important;
}

这个时候段落的字体就改成红色这个强属性了。

TIPS:除了以上的情况以外,还有以下两种冲突:

  • 同类class冲突,后来居上

class类可以重叠使用,也就是说一个<div>块里面可以设置多个class类,语句为 class="class1 class2 ...",当多个类出现冲突的时候,以<style>里面最后一个为基准,而不是以class="class1 class2"的顺序为基准。

举个例子,如下图所示,在style里面pink排在black属性的后面,所以文字最后显示的是pink。你可以把它想象成一个后面把前面覆盖的过程。


那如果在不改变style顺序的情况下,我要把字体的颜色改成black怎么办。这个时候important就派上用场了,你可以在black的颜色属性后面加一个!important就可以了,有兴趣的可以自己试一试~很有意思。

  • 类选择器和元素选择器冲突,类选择器优先
<head>
  <style>
    .special {
      color: red;
    }
    p {
      color: blue;
    }
  </style>
</head>
<body>
   <p class="special">What color am I?</p>
</body>

这个时候字体就会是红色的。如果要变成蓝色的,加一个!important就好啦。

那么权重如何计算呢:

用权重记忆口诀。从0开始,一个行内样式+1000,一个id+100,一个属性选择器/class或者伪类+10,一个元素名,或者伪元素+1.

  • 相同的权重:以后面出现的选择器为最后规则:
  • 不同的权重,权重值高则生效

3.给一个 p 元素的文字设置文字居右。

 p {
   text-align: right;  
 }

4.链接 a 元素的伪类有哪些,分别代表什么状态?

a:link 链接未被点击时的状态
a:visited 链接点击过后的状态
a:hover 鼠标移动到链接上时的状态
a:active 点击链接时的状态

5.初始化列表样式怎么设置?

ol,ul,li {
  list-style:none
} 

6.假设有元素设置了如下样式,怎么用 background 简写?

background: center center/80% auto no-repeat url(./static/images/banner_bg.png) red

7.怎么去掉 input 元素 focus 后的蓝色模糊框?

可以给他设置CSS样式,去除模糊框

.delete-border {
   outline:none;
  }

8.用 border 实现 如图效果,颜色不限。

<style>
      .left {
            display: inline-block;
            width: 0px;
            height: 0px;
            border: 50px solid #666 transparent;
            border-left-color:skyblue;
      }
      .top {
            display: inline-block;
            width: 0px;
            height: 0px;
            border: 50px solid #666 transparent;
            border-top-color:skyblue;
      }
      .right {
            display: inline-block;
            width: 0px;
            height: 0px;
            border: 50px solid #666 transparent;
            border-right-color:skyblue;
      }
  </style>

最后实现的效果如下:


image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • HTML 软件架构 C/S:C(客户端,用户通过客户端来使用软件),S表示服务器。一般软件都是C/S架构。软件使用...
    小土豆dy阅读 5,117评论 0 5
  • css基础 样式类型 行内样式 追命 ​ 内部样式 div { color: red ; } ​ ...
    mao_orz阅读 3,081评论 0 0
  • HTML 5 HTML5概述 因特网上的信息是以网页的形式展示给用户的,因此网页是网络信息传递的载体。网页文件是用...
    阿啊阿吖丁阅读 10,160评论 0 0
  • CSS 指层叠样式表(Cascading Style Sheets),是一种用来为结构化文档(如 HTML 文档或...
    神齐阅读 6,485评论 0 14
  • 学习CSS的最佳网站没有之一 http://www.w3school.com.cn/tags/index.asp ...
    Amyyy_阅读 4,760评论 0 1

友情链接更多精彩内容