藏金阁的扫地僧 發表於 2020-5-25 19:27:00

CSS学习笔记(基础)

<h1 class="md-end-block md-heading"><span class="md-plain md-expand">css</span></h1>
<p class="md-end-block md-p"><span><strong>——道阻且长,行则将至</strong></span></p>
<p class="md-end-block md-p md-focus">&nbsp;</p>
<h2 class="md-end-block md-heading"><span class="md-plain">1.什么是CSS?</span></h2>
<p class="md-end-block md-p">&nbsp;</p>
<h2 class="md-end-block md-heading"><span class="md-plain">2.CSS导入方式</span></h2>
<pre class="md-fences md-end-block md-fences-with-lineno ty-contain-cm modeLoaded">&nbsp;<span>#### <span class="cm-tab">   优先级:就近原则</span></span></pre>
<ol class="ol-list" start="">
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">行内样式</span></p>
<pre class="md-fences md-end-block md-fences-with-lineno ty-contain-cm modeLoaded">&nbsp;<span><span class="cm-comment">&lt;!--行内样式:在标签元素中,编写一个style属性,编写样式即可 多个以分号结尾--&gt;<br>&nbsp;<span><span class="cm-tag cm-bracket">&lt;<span class="cm-tag">h1 <span class="cm-attribute">style=<span class="cm-string">"color: coral;"<span class="cm-tag cm-bracket">&gt;标签<span class="cm-tag cm-bracket">&lt;/<span class="cm-tag">h1<span class="cm-tag cm-bracket">&gt;</span></span></span></span></span></span></span></span></span></span></span></pre>
<p class="md-end-block md-p">&nbsp;</p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">内部样式表</span></p>
<pre class="md-fences md-end-block md-fences-with-lineno ty-contain-cm modeLoaded">&nbsp;<span>&lt;<span class="cm-keyword">!--内部样式表--&gt;<br>&nbsp;<span>&lt;<span class="cm-tag">style&gt;<br>&nbsp;<span> &nbsp; &nbsp;<span class="cm-tag">h1{<br>&nbsp;<span> &nbsp; &nbsp; &nbsp; &nbsp;<span class="cm-property">color: <span class="cm-keyword">black;<br>&nbsp;<span> &nbsp;}<br>&nbsp;<span>&lt;/<span class="cm-tag">style&gt;</span></span></span></span></span></span></span></span></span></span></span></span></pre>
<p class="md-end-block md-p">&nbsp;</p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">外部样式表</span></p>
<pre class="md-fences md-end-block md-fences-with-lineno ty-contain-cm modeLoaded">&nbsp;<span>&lt;<span class="cm-keyword">!--外部样式表--&gt;<br>&nbsp;<span> &nbsp;&lt;<span class="cm-keyword">!--链接式--&gt;<br>&nbsp;<span> &nbsp;&lt;<span class="cm-tag">link <span class="cm-tag">rel=<span class="cm-string">"stylesheet" <span class="cm-tag">href=<span class="cm-string">"css/style.css"&gt;<br>&nbsp;<span> &nbsp;&lt;<span class="cm-keyword">!--导入式一般不用 <span class="cm-def">@import是 <span class="cm-error">CSS2<span class="cm-number">.1特有的--&gt;<br>&nbsp;<span> &nbsp;&lt;<span class="cm-error">style&gt;<br>&nbsp;<span> &nbsp; &nbsp; &nbsp; &nbsp;<span class="cm-def">@import <span class="cm-string">"css/style.css";<br>&nbsp;<span> &nbsp;&lt;/<span class="cm-tag">style&gt;</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
<p class="md-end-block md-p">&nbsp;</p>
</li>
</ol>
<h2 class="md-end-block md-heading"><span class="md-plain">3.CSS选择器</span></h2>
<p class="md-end-block md-p">&nbsp;</p>
<h3 class="md-end-block md-heading"><span class="md-plain">1.基本选择器</span></h3>
<p class="md-end-block md-p"><span><strong>优先级: id选择器&gt;class选择器&gt;标签选择器</strong></span></p>
<ol class="ol-list" start="">
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">标签选择器</span></p>
<pre class="md-fences md-end-block md-fences-with-lineno ty-contain-cm modeLoaded">&nbsp;<span>&lt;<span class="cm-tag">style&gt;<br>&nbsp;<span> &nbsp; &nbsp;<span class="cm-comment">/*标签选择器,会选择到页面上所有为这个标签的元素*/<br>&nbsp;<span> &nbsp; &nbsp;<span class="cm-tag">h1{<br>&nbsp;<span> &nbsp; &nbsp; &nbsp; &nbsp;<span class="cm-property">color: <span class="cm-atom">#ffffff;<br>&nbsp;<span> &nbsp; &nbsp; &nbsp; &nbsp;<span class="cm-property">background: <span class="cm-keyword">darkcyan;<br>&nbsp;<span> &nbsp; &nbsp; &nbsp; &nbsp;<span class="cm-property">border-radius: <span class="cm-number">10px;<br>&nbsp;<span> &nbsp;}<br>&nbsp;<span> &nbsp; &nbsp;<span class="cm-tag">p{<br>&nbsp;<span> &nbsp; &nbsp; &nbsp; &nbsp;<span class="cm-property">font-size: <span class="cm-number">80px;<br>&nbsp;<span> &nbsp;}<br>&nbsp;<span>&lt;/<span class="cm-tag">style&gt;</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
<p class="md-end-block md-p">&nbsp;</p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">类选择器</span></p>
<pre class="md-fences md-end-block md-fences-with-lineno ty-contain-cm modeLoaded">&nbsp;<span>&lt;<span class="cm-tag">style&gt;<br>&nbsp;<span> &nbsp; &nbsp;<span class="cm-comment">/*类选择器的格式:.class的名称{}<br>&nbsp;<span><span class="cm-comment"> &nbsp;好处:可以多个标签归类,相当于同一个class,可以复用<br>&nbsp;<span><span class="cm-comment"> &nbsp;*/<br>&nbsp;<span> &nbsp; &nbsp;<span class="cm-qualifier">.title1{<br>&nbsp;<span> &nbsp; &nbsp; &nbsp; &nbsp;<span class="cm-property">color: <span class="cm-keyword">aqua;<br>&nbsp;<span> &nbsp;}<br>&nbsp;<span> &nbsp; &nbsp;<span class="cm-qualifier">.title2{<br>&nbsp;<span> &nbsp; &nbsp; &nbsp; &nbsp;<span class="cm-property">color: <span class="cm-keyword">crimson;<br>&nbsp;<span> &nbsp;}<br>&nbsp;<span> &nbsp; &nbsp;<span class="cm-qualifier">.title3{<br>&nbsp;<span> &nbsp; &nbsp; &nbsp; &nbsp;<span class="cm-property">color: <span class="cm-keyword">coral;<br>&nbsp;<span> &nbsp;}<br>&nbsp;<span>&lt;/<span class="cm-tag">style&gt;</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
<p class="md-end-block md-p">&nbsp;</p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">id选择器</span></p>
<pre class="md-fences md-end-block md-fences-with-lineno ty-contain-cm modeLoaded">&nbsp;<span>&lt;<span class="cm-tag">style&gt;<br>&nbsp;<span> &nbsp; &nbsp;<span class="cm-comment">/*id选择器id必须保证全局唯一<br>&nbsp;<span><span class="cm-comment"> &nbsp;格式: #id名称{ }<br>&nbsp;<span><span class="cm-comment"> &nbsp;*/<br>&nbsp;<span> &nbsp; &nbsp;<span class="cm-builtin">#title1{<br>&nbsp;<span> &nbsp; &nbsp; &nbsp; &nbsp;<span class="cm-property">color: <span class="cm-keyword">coral;<br>&nbsp;<span> &nbsp;}<br>&nbsp;<span> &nbsp; &nbsp;<span class="cm-qualifier">.title1{<br>&nbsp;<span> &nbsp; &nbsp; &nbsp; &nbsp;<span class="cm-property">color: <span class="cm-keyword">darkkhaki;<br>&nbsp;<span> &nbsp;}<br>&nbsp;<span> &nbsp; &nbsp;<span class="cm-qualifier">.title4{<br>&nbsp;<span> &nbsp; &nbsp; &nbsp; &nbsp;<span class="cm-property">color: <span class="cm-keyword">darkcyan;<br>&nbsp;<span> &nbsp;}<br>&nbsp;<span> &nbsp; &nbsp;<span class="cm-tag">h1{<br>&nbsp;<span> &nbsp; &nbsp; &nbsp; &nbsp;<span class="cm-property">color: <span class="cm-keyword">blueviolet;<br>&nbsp;<span> &nbsp;}<br>&nbsp;<span>&lt;/<span class="cm-tag">style&gt;</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
<p class="md-end-block md-p">&nbsp;</p>
</li>
</ol>
<h3 class="md-end-block md-heading"><span class="md-plain">2.层次选择器</span></h3>
<ol class="ol-list" start="">
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">后代选择器:在某个元素的后面(儿孙选择器)</span></p>
<pre class="md-fences md-end-block md-fences-with-lineno ty-contain-cm modeLoaded">&nbsp;<span><span class="cm-comment">/* 后代选择器 */<br>&nbsp;<span><span class="cm-tag">body <span class="cm-tag">p{<br>&nbsp;<span> &nbsp; &nbsp;<span class="cm-property">background: <span class="cm-keyword">crimson;<br>&nbsp;<span>}</span></span></span></span></span></span></span></span></span></pre>
<p class="md-end-block md-p">&nbsp;</p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">子选择器:只有一代(儿子选择器)</span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">/*子选择器*/
body&gt;p{
    background: blueviolet;
}</pre>
<p class="md-end-block md-p">&nbsp;</p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">相邻兄弟选择器: 同辈 向下一个(一个弟弟选择器)</span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">/*相邻兄弟选择器*/
.active + p{
    background: darkcyan;
}</pre>
<p class="md-end-block md-p">&nbsp;</p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">通用选择器: 同辈 向下所有(所有弟弟选择器)</span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">/*通用选择器*/
.active~p{
    background: cornflowerblue;
}</pre>
<p class="md-end-block md-p">&nbsp;</p>
</li>
</ol>
<h3 class="md-end-block md-heading"><span class="md-plain">3.结构伪类选择器</span></h3>
<p class="md-end-block md-p"><span class="md-tab"> <span class="md-plain">伪类: 条件</span></span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">/*ul的第一个子元素*/
ul li:first-child{
    background: cornflowerblue;
}

/*ul的最后一个子元素*/
ul li:last-child{
    background: darkcyan;
}

/* 选择p1:定位到父元素选择到当前的第一个元素
   选择当前p元素的父级元素,选中父级元素的第一个,并且是当前元素才生效
   顺序
*/
p:nth-child(1) {
    background: darkkhaki;
}
/* 选中父元素下的类型为p元素的第二个
   类型
*/
p:nth-of-type(2){
    background: crimson;
}

a:hover{
    background: deeppink;
}</pre>
<p class="md-end-block md-p">&nbsp;</p>
<p class="md-end-block md-p">&nbsp;</p>
<h3 class="md-end-block md-heading"><span class="md-plain">4.属性选择器(常用)</span></h3>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;
&lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;title&gt;Title&lt;/title&gt;

    &lt;style&gt;
      .demo a{
            float: left;
            display: block;
            height: 50px;
            width: 50px;
            border-radius: 30px;
            background: cornflowerblue;
            text-align: center;
            text-decoration: none;
            color: crimson;
            margin-right: 10px;
            font: bold 20px/50px Arial;
      }
      /* 选择存在id属性的元素
         格式[属性名/属性名=属性值(可以是正则表达式)]{}
      */
      /*a{*/
      /*    background: yellow;*/
      /*}*/
      /*a{*/
      /*    background: yellow;*/
      /*}*/
      /* 选择class中有links的元素
            = :绝对等于
            *= :包含
            ^= : 以...开头
            $= : 以...结尾
      */
      /*a{*/
      /*    background: yellow;*/
      /*}*/
      /* 选择href中以http开头的元素 */
      /*a{*/
      /*    background: yellow;*/
      /*}*/
      /* 选择href中以pdf结尾的元素 */
      a{
            background: deeppink;
      }
    &lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;

&lt;p class="demo"&gt;
    &lt;a href="http://www.baidu.com" class="links item first" id="first" \&gt;01&lt;/a&gt;
    &lt;a href="http://www.baidu.com" class="links item active" target="_blank" title="test"&gt;02&lt;/a&gt;
    &lt;a href="images/123.html" class="links item"&gt;03&lt;/a&gt;
    &lt;a href="images/123.png" class="links item"&gt;04&lt;/a&gt;
    &lt;a href="images/123.jpg" class="links item"&gt;05&lt;/a&gt;
    &lt;a href="abc" class="links item"&gt;06&lt;/a&gt;
    &lt;a href="/a.pdf" class="links item"&gt;07&lt;/a&gt;
    &lt;a href="/abc.pdf" class="links item"&gt;08&lt;/a&gt;
    &lt;a href="abc.doc" class="links item"&gt;09&lt;/a&gt;
    &lt;a href="abcd.doc" class="links item last"&gt;10&lt;/a&gt;
&lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<p class="md-end-block md-p">&nbsp;</p>
<p class="md-end-block md-p">&nbsp;</p>
<h2 class="md-end-block md-heading"><span class="md-plain">4.美化网页元素</span></h2>
<h3 class="md-end-block md-heading"><span class="md-plain">1.为什么要美化网页?</span></h3>
<ol class="ol-list" start="">
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">有效的传递页面信息</span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">美化网页,吸引用户</span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">凸显页面主题</span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">提高用户体验</span></p>
</li>
</ol>
<p class="md-end-block md-p">&nbsp;</p>
<p class="md-end-block md-p"><span class="md-plain">span标签:重点突出的字,使用span标签(本身没有效果,约定俗成)</span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;
&lt;head&gt;
&lt;meta charset="UTF-8"&gt;
&lt;title&gt;span&lt;/title&gt;

&lt;style&gt;
   #title1{
       font-size: 50px;
   }
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;

欢迎学习 &lt;span id="title1"&gt;CSS&lt;/span&gt;

&lt;/body&gt;
&lt;/html&gt;</pre>
<p class="md-end-block md-p">&nbsp;</p>
<h3 class="md-end-block md-heading"><span class="md-plain">2.字体样式</span></h3>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">/*font-family:字体
font-size:字体大小
font-weight:字体粗细
color:字体颜色
*/
body{
    font-family: "Arial Black", 楷体;
    color: cornflowerblue;
}
h1{
    font-size: 70px;
}
.p1{
    font-weight: bold;
}
.p2{
    font-weight: lighter;
}</pre>
<p class="md-end-block md-p">&nbsp;</p>
<h3 class="md-end-block md-heading"><span class="md-plain">3.文本样式</span></h3>
<ol class="ol-list" start="">
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">颜色 <span class="md-tab"> <span class="md-plain">color字体颜色 background背景颜色</span></span></span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span><strong>文本对齐方式 text-align</strong></span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span><strong>首行缩进 text-indent</strong></span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span><strong>行高 line-height 行高和高度一致就可以上下居中</strong></span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">阴影 text-shadow</span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">/*阴影 水平偏移 垂直偏移 阴影半径 阴影颜色*/
text-shadow: 10px 0px 20px dodgerblue;</pre>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">装饰</span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">/*下划线*/
.l1{
    text-decoration: underline;
}
/*中划线*/
.l2{
    text-decoration: line-through;
}
/*上划线*/
.l3{
    text-decoration: overline;
}
/*去除下划线: text-decoration: none;*/
a{
           text-decoration: none;
}</pre>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">文本图片对齐:水平:vertical-align: center; 上下:vertical-align: middle</span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">/*对齐:参照物 a,b*/
img,span{
    /*水平*/
    vertical-align: center;
    /*上下*/
    vertical-align: middle;
}</pre>
</li>
</ol>
<p class="md-end-block md-p">&nbsp;</p>
<h3 class="md-end-block md-heading"><span class="md-plain">4.超链接伪类</span></h3>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">/*默认的颜色*/
a{
        text-decoration: none;
        color: darkcyan;
}
/*未访问链接*/
a:link{
        color: black;
}
/*鼠标悬浮时*/
a:hover{
        color: orange;
        background: darkcyan;
        font-size: 25px;
}
/*鼠标点击未释放*/
a:active{
        color: white;
}
/*已访问链接*/
a:visited{
        color: khaki;
}</pre>
<p class="md-end-block md-p">&nbsp;</p>
<h3 class="md-end-block md-heading"><span class="md-plain">5.列表</span></h3>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">/*ul li*/
/*list-style
    none 去掉圆点
    circle 空心圆
    decimal 数字
    square正方形
*/
ul li{
    height: 25px;
    list-style: none;
    text-indent: 0em;
}</pre>
<p class="md-end-block md-p">&nbsp;</p>
<p class="md-end-block md-p">&nbsp;</p>
<h3 class="md-end-block md-heading"><span class="md-plain">6.背景</span></h3>
<h4 class="md-end-block md-heading"><span>背景颜色</span></h4>
<p class="md-end-block md-p"><span class="md-tab"> <span class="md-plain">background-color</span></span></p>
<h4 class="md-end-block md-heading"><span>背景图片</span></h4>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">&lt;style&gt;
    div{
      width: 1000px;
      height: 700px;
      border: 2px solid red;
      /*默认全部平铺repeat*/
      background-image: url("images/1.png");

    }
    .div1{
      /*水平*/
      background-repeat: repeat-x;
    }
    .div2{
      /*垂直*/
      background-repeat: repeat-y;
    }
    .div3{
      /*不平铺*/
      background-repeat: no-repeat;
      /*定位*/
      background-position: 200px 2px;
    }
&lt;/style&gt;
</pre>
<p class="md-end-block md-p"><span class="md-tab"> <span class="md-plain">综合写法</span></span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">/*颜色图片图片位置   平铺方式*/
background:#11aebc url("../images/down.png") 205px 7px no-repeat;</pre>
<h4 class="md-end-block md-heading"><span class="md-plain">渐变</span></h4>
<p class="md-end-block md-p"><span class="md-tab"> <span><code>我的垃圾审美</code></span></span></p>
<blockquote>
<p class="md-end-block md-p"><span><strong><span class=" md-link"><span class="md-plain">渐变网站</span></span></strong></span></p>
</blockquote>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">&lt;!--镜像渐变 ,圆形渐变 --&gt;
&lt;style&gt;
    body{
      background-color: #08AEEA;
      background-image: linear-gradient(45deg, #08AEEA 0%, #2AF598 100%);

    }</pre>
<p class="md-end-block md-p">&nbsp;</p>
<h3 class="md-end-block md-heading"><span class="md-plain">7. 背景透明度</span></h3>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno"> /*背景透明度*/
opacity: 0.5;
filter: alpha(opacity=50);</pre>
<p class="md-end-block md-p">&nbsp;</p>
<p class="md-end-block md-p">&nbsp;</p>
<p class="md-end-block md-p">&nbsp;</p>
<p class="md-end-block md-p">&nbsp;</p>
<h2 class="md-end-block md-heading"><span class="md-plain">5.盒子模型</span></h2>
<h3 class="md-end-block md-heading"><span class="md-plain">1.什么是盒子?</span></h3>
<p class="md-end-block md-p"><span class="md-image md-img-loaded" data-src="C:\Users\t1467\AppData\Roaming\Typora\typora-user-images\image-20200520153417967.png"><img alt="image-20200520153417967" data-local-refresh="true"></span></p>
<p class="md-end-block md-p"><span class="md-plain">margin:外边距</span></p>
<p class="md-end-block md-p"><span class="md-plain">padding:内边距</span></p>
<p class="md-end-block md-p"><span class="md-plain">border:边框 </span></p>
<p class="md-end-block md-p">&nbsp;</p>
<h3 class="md-end-block md-heading"><span class="md-plain">2.边框</span></h3>
<ol class="ol-list" start="">
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">边框的粗细</span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">边框的样式</span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">边框的颜色</span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">&lt;style&gt;
    /*body总有一个默认的外边距,所以我们通常将他们初始化为0px*/
    body{
      margin: 0px;
      padding: 0px;
    }
    /*border:粗细,样式,颜色*/
    #box{
      width: 300px;
      border:1px solid #11aebc ;
    }
    h2{
      font-size: 18px;
      color: white;
      line-height: 40px;
      background-color: #11aebc;
    }
    form{
      background-color: #29bcc9;
    }
    div:nth-of-type(1)&gt;input{
      border: 2px solid #2AF598;
    }
    div:nth-of-type(2)&gt;input{
      border: 2px dashed orange;
    }
&lt;/style&gt;</pre>
<p class="md-end-block md-p">&nbsp;</p>
</li>
</ol>
<h3 class="md-end-block md-heading"><span class="md-plain">3.内、外边距</span></h3>
<p class="md-end-block md-p">&nbsp;</p>
<p class="md-end-block md-p"><span class="md-tab"> <span class="md-plain">margin: 0 auto; 居中</span></span></p>
<p class="md-end-block md-p"><span class="md-tab"> <span class="md-plain">要求:块元素,块元素有固定的宽度</span></span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">/*
margin:全部
margin:上下左右
margin:上 右 下 左

padding如上
*/
#box{
    width: 300px;
    border:1px solid #11aebc ;
    margin: 0 auto;
}
h2{
    margin: 0 0 0 0;
}
div:nth-of-type(1){
    border: 1px solid yellow;
    padding: 10px;
}</pre>
<p class="md-end-block md-p">&nbsp;</p>
<h3 class="md-end-block md-heading"><span class="md-plain">4.盒子的长宽计算方式</span></h3>
<p class="md-end-block md-p"><span class="md-tab"> <span><strong>margin+border+padding+内容宽度</strong></span></span></p>
<p class="md-end-block md-p">&nbsp;</p>
<h3 class="md-end-block md-heading"><span class="md-plain">5.圆角边框</span></h3>
<p class="md-end-block md-p">&nbsp;</p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">&lt;!--
border-radius: 四个角
border-radius: 左上和右下   右上和左下
border-radius: 左上右上右下左下 顺时针方向
--&gt;
&lt;!--
圆圈:圆角值等于半径值
--&gt;

&lt;style&gt;
    div{
      width: 100px;
      height: 100px;
      border: 1px solid #2AF598;
      border-radius: 100px 0px 0 0;
    }
&lt;/style&gt;css</pre>
<h3 class="md-end-block md-heading"><span class="md-plain">6.阴影</span></h3>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">&lt;!--边框阴影 x轴y轴 阴影半径 阴影颜色 --&gt;
box-shadow: 0px 10px 10px red;</pre>
<p class="md-end-block md-p">&nbsp;</p>
<p class="md-end-block md-p">&nbsp;</p>
<h2 class="md-end-block md-heading"><span class="md-plain">6. 浮动</span></h2>
<h3 class="md-end-block md-heading"><span class="md-plain">1.标准文档流</span></h3>
<p class="md-end-block md-p"><span class="md-tab"> <span class="md-plain">块级元素:独占一行</span></span></p>
<p class="md-end-block md-p"><span class="md-plain"> <span class="md-tab"> <span class="md-plain">h1~h6<span class="md-tab"> <span class="md-plain">p<span class="md-tab"> <span class="md-plain">div<span class="md-tab"> <span class="md-plain">列表......</span></span></span></span></span></span></span></span></span></p>
<p class="md-end-block md-p"><span class="md-tab"> <span class="md-plain">行内元素:不独占一行</span></span></p>
<p class="md-end-block md-p"><span class="md-tab"> <span class="md-plain"> span<span class="md-tab"> <span class="md-plain">a<span class="md-tab"> <span class="md-plain">img<span class="md-tab"> <span class="md-plain">strong......</span></span></span></span></span></span></span></span></p>
<p class="md-end-block md-p"><span class="md-tab"> <span class="md-plain">行内元素 可以被包含在 块级元素中,反之则不可以。</span></span></p>
<h3 class="md-end-block md-heading"><span class="md-plain">2.display</span></h3>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">&lt;!-—
      block:块元素
      inline:行内元素
      inline-block:是块元素,但是可以内联 在一行!
      none:
    --&gt;
    &lt;style&gt;
      div{
            width: 100px;
            height: 100px;
            border: 2px solid #11aebc;
            display: inline-block;
      }
      span{
            width: 100px;
            height: 100px;
            border: 2px solid #11aebc;
            display: inline;
      }
    &lt;/style&gt;</pre>
<p class="md-end-block md-p">&nbsp;</p>
<h3 class="md-end-block md-heading"><span class="md-plain">3.float</span></h3>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">/*左浮*/
float:left;</pre>
<p class="md-end-block md-p">&nbsp;</p>
<h3 class="md-end-block md-heading"><span class="md-plain">4.父级边框塌陷的问题</span></h3>
<p class="md-end-block md-p">&nbsp;</p>
<p class="md-end-block md-p"><span class="md-plain">clear:</span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">/*左侧不允许有浮动*/
clear:left;
/*左侧不允许有浮动*/
clear:right;
/*两侧都不允许有浮动*/
clear:both;
clear:none;</pre>
<p class="md-end-block md-p">&nbsp;</p>
<p class="md-end-block md-p"><span class="md-plain">解决方案:</span></p>
<ol class="ol-list" start="">
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">增加父级元素的高度</span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">增加一个空的div清除浮动</span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">&lt;div class="clear"&gt;&lt;/div&gt;
&lt;style&gt;
.clear{
        clear:both;
        margin:0;
        padding:0;
}
&lt;/style&gt;</pre>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">overflow</span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">在父级元素中增加一个:overflow: hodden;</pre>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">在父类添加一个伪类:after <span><strong>推荐使用</strong></span></span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">#father:after{
        content:'';
    display:block;
    clear:both;
}</pre>
<p class="md-end-block md-p">&nbsp;</p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-image md-img-loaded" data-src="C:\Users\t1467\AppData\Roaming\Typora\typora-user-images\image-20200521223243193.png"><img alt="image-20200521223243193" data-local-refresh="true"></span></p>
</li>
</ol>
<h3 class="md-end-block md-heading"><span class="md-plain">5.对比</span></h3>
<ul class="ul-list" data-mark="+">
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">display</span></p>
<p class="md-end-block md-p"><span class="md-plain">方向不可控制</span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">float</span></p>
<p class="md-end-block md-p"><span class="md-plain">浮动起来会脱离标准文档流,所以要解决父级边框塌陷的问题~</span></p>
</li>
</ul>
<p class="md-end-block md-p">&nbsp;</p>
<h2 class="md-end-block md-heading"><span class="md-plain">7.定位</span></h2>
<h3 class="md-end-block md-heading"><span class="md-plain">1.相对定位</span></h3>
<p class="md-end-block md-p"><span class="md-tab"> <span class="md-plain">相对定位position:relative</span></span></p>
<p class="md-end-block md-p"><span class="md-tab"> <span class="md-plain">相对于原来的位置,进行指定的偏移,相对定位的话,它仍然在标准文档流中!原来的位置会被保留。</span></span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;
&lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;title&gt;定位&lt;/title&gt;

    &lt;style&gt;
      body{
            padding: 50px;
      }
      div{
            margin: 10px;
            padding: 5px;
            font-size: 20px;
            line-height: 30px;
      }
      #father{
            border: 1px solid #11aebc;
            padding: 0;
      }
      #first{
            background-color: yellow;
            border: 1px dashed red;
            /*相对定位*/
            position: relative;
            top: -50px;
            left: 50px;
      }
      #second{
            background-color: cornflowerblue;
            border: 1px dashed black;
      }
      #third{
            background-color: aquamarine;
            border: 1px dashed orange;
            position: relative;
            bottom: 20px;
      }
    &lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
    &lt;div id="father"&gt;
      &lt;div id="first"&gt;第一个盒子&lt;/div&gt;
      &lt;div id="second"&gt;第二个盒子&lt;/div&gt;
      &lt;div id="third"&gt;第三个盒子&lt;/div&gt;
    &lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<p class="md-end-block md-p"><span class="md-image md-img-loaded" data-src="E:\我的文档\CSS学习笔记\image-20200521225850195.png"><img alt="image-20200521225850195" data-local-refresh="true"></span></p>
<h3 class="md-end-block md-heading"><span class="md-plain">2. 绝对定位</span></h3>
<p class="md-end-block md-p"><span class="md-tab"> <span class="md-plain">定位:基于XXX定位,上下左右~</span></span></p>
<ol class="ol-list" start="">
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">没有父级元素定位的前提下,相对于浏览器边框定位</span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">假设父级元素存在定位,我们通常会相对于父级元素进行偏移</span></p>
</li>
<li class="md-list-item">
<p class="md-end-block md-p"><span class="md-plain">在父级元素范围内移动</span></p>
<p class="md-end-block md-p"><span class="md-plain">相对于父级或浏览器的位置,进行指定的偏移,绝对定位的话,它不在标准文档流中,原来的位置不会被保留。</span></p>
</li>
</ol>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">   &lt;!DOCTYPE html&gt;
   &lt;html lang="en"&gt;
   &lt;head&gt;
         &lt;meta charset="UTF-8"&gt;
         &lt;title&gt;绝对定位&lt;/title&gt;
   
         &lt;style&gt;
             body{
               padding: 50px;
             }
             div{
               margin: 10px;
               padding: 5px;
               font-size: 20px;
               line-height: 30px;
             }
             #father {
               border: 1px solid #11aebc;
               padding: 0;
               position: relative;
             }
             #father :after{
               content: '';
               display: block;
               clear:both;
             }
             #first{
               background-color: yellow;
               border: 1px dashed red;
             }
             #second{
               background-color: cornflowerblue;
               border: 1px dashed black;
             }
             #third{
               background-color: aquamarine;
               border: 1px dashed orange;
               position: absolute;
               right: 30px;
             }
             #fourth{
               background-color: red;
               border: 1px dashed orange;
               position: absolute;
               right: 10px;
             }
             #firth{
               color:white;
               background-color: black;
               border: 1px dashed orange;
               position: absolute;
               right: 60px;
             }
         &lt;/style&gt;
   &lt;/head&gt;
   &lt;body&gt;
   &lt;div id="father"&gt;
         &lt;div id="first"&gt;第一个盒子&lt;/div&gt;
         &lt;div id="second"&gt;第二个盒子&lt;/div&gt;
         &lt;div id="third"&gt;
             第三个盒子
             &lt;div id="fourth"&gt;第四个盒子&lt;/div&gt;
             &lt;div id="firth"&gt;第五个盒子&lt;/div&gt;
         &lt;/div&gt;
   &lt;/div&gt;
   &lt;/body&gt;
   &lt;/body&gt;
   &lt;/html&gt;</pre>
<p class="md-end-block md-p">&nbsp;</p>
<h3 class="md-end-block md-heading"><span class="md-plain">3. 固定定位fixed</span></h3>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;
&lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;title&gt;固定定位&lt;/title&gt;

    &lt;style&gt;
      body{
            height: 1000px;
      }
      /*绝对定位相对于浏览器*/
      div:nth-of-type(1){
            width:100px;
            height: 100px;
            background-color: #2AF598;
            position:absolute ;
            right: 0;
            bottom: 0;
      }
      /*固定定位*/
      div:nth-of-type(2){
            width:50px;
            height: 50px;
            background-color: orange;
            position: fixed;
            right: 0;
            bottom: 0;
      }
    &lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div&gt;div1&lt;/div&gt;
&lt;div&gt;div2&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<p class="md-end-block md-p">&nbsp;</p>
<h3 class="md-end-block md-heading"><span class="md-plain">4. z-index</span></h3>
<p class="md-end-block md-p"><span class="md-tab"> <span class="md-plain">图层</span></span></p>
<p class="md-end-block md-p"><span class="md-tab"> <span class="md-plain">z-index:默认是0,最高无限</span></span></p>
<pre class="md-fences mock-cm md-end-block md-fences-with-lineno">&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;
&lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;title&gt;z-index&lt;/title&gt;

    &lt;style&gt;
      #content{
            width: 200px;
            padding: 0;
            margin: 0;
            overflow: hidden;
            font-size: 12px;
            line-height: 20px;
            border: 2px solid #11aebc;
      }
      ul,li{
            padding: 0;
            margin: 0;
            list-style: none;
      }
      /*父级元素相对定位*/
      #content ul{
            position: relative;
      }
      .tipText,.tipBg{
            position: absolute;
            width: 380px;
            height: 25px;
            top: 125px;
      }
      .tipBg{
            background-color: black;
            /*背景透明度*/
            opacity: 0.5;
            filter: alpha(opacity=50);
      }
      .tipText{
            color: white;
            line-height: 25px;
            z-index: 16;
      }
    &lt;/style&gt;
&lt;/head&gt;

&lt;body&gt;
&lt;div id="content"&gt;
    &lt;ul&gt;
      &lt;li&gt;&lt;img src="images/2B.jpg" alt="" width="200px" height="150px"&gt;&lt;/li&gt;
      &lt;li class="tipText"&gt;2B&lt;/li&gt;
      &lt;li class="tipBg"&gt;&lt;/li&gt;
      &lt;li class="time"&gt;时间:2099-01-01&lt;/li&gt;
      &lt;li class="address"&gt;地点:火星&lt;/li&gt;
    &lt;/ul&gt;
&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<p class="md-end-block md-p">&nbsp;</p>
<p class="md-end-block md-p">&nbsp;</p>
<h2 class="md-end-block md-heading"><span class="md-plain">8. 动画</span></h2>
<p class="md-end-block md-p"><span class="md-plain">css3新特性</span></p>
<p class="md-end-block md-p">&nbsp;</p>
<p class="md-end-block md-p">&nbsp;</p>
<p class="md-end-block md-p">&nbsp;</p>
<p class="md-end-block md-p">&nbsp;</p>
<h2 class="md-end-block md-heading"><span class="md-plain">9. 总结</span></h2>
<p class="md-end-block md-p"><span class="md-expand"><code>待做</code></span></p><br><br>
来源:https://www.cnblogs.com/supfit/p/12960444.html
頁: [1]
查看完整版本: CSS学习笔记(基础)