动态响应布局、iconfont笔记

10 篇文章 0 订阅

clip:rect矩形剪裁功能

rect(30px 200px 200px 20px)
rect(top right bottom left)
参数:top right bottom left分别指最终剪裁可见区域的上边,右边,下边与左边。而所有的数值都表示位置,且是相对于原始元素的左上角而言的
说明:裁剪矩形上边距上边的距离是30px 裁剪矩形右边距左边的距离是200px 裁剪矩形下边距上边的距离是200px 裁剪矩形左边距左边的距离20px

在这里插入图片描述


:not

li a:hover:not(.action){ /* a标签没有被选中的类名为action不会变背景颜色 */
		background-color: #111;
	}
.action{
		background-color: #4caf50;
	}


<li><a href="javascript:;" class="action">主页</a></li>
<li><a href="javascript:;">新闻</a></li>

screen

@media screen and (max-width:600px) { /* 如果屏幕宽度小于600px */
		.topnav li.right,li{ /* 权重 */
			float: none; /* 取消浮动效果 */
		}
	}

overflow

  • overflow: scroll; 滚动栏一直存在
  • overflow: hidden; 超过范围就隐藏
  • overflow: auto; 如果不超出范围滚动条不显示 超出必显示
  • overflow: visible; 默认 超出范围不隐藏

float

float:left 左浮动效果
float:right 右浮动效果
clear:right 清除右浮动效果
overflow: auto 清除浮动效果

line-height

.center p {
    line-height: 1.5; /* 字体高度的1.5倍 */
    display: inline-block;
    vertical-align: middle;
}

兄弟选择器 单选

  • div+p 选取与div平级的兄弟p标签,如果有两个兄弟p标签,选中第一个p标签 ,而不是子类p标签

  • div+p+p 选取与div平级的兄弟p标签,如果有两个兄弟p标签,选中第二个p标签 ,而不是子类p标签

    div+p{
    background-color:yellow;
    }
    div{
    border: 1px solid red;
    }

    文章标题

    DIV 内部标题

    DIV 内部段落。

    DIV 之后的第一个 P 元素。

    DIV 之后的第二个 P 元素。

兄弟选择器 多选

  • div~p 选取同级的全部兄弟p标签

    div~p{
    background-color:yellow;
    }

伪类 :lang 引用 quotes

q:lang(no){ /* lang定义了q元素的值为lang =“no” */
	quotes: "~" "~";
}


<p>一些文本 <q lang="no">我们已经引入了</q> 一些文本.</p>
<!-- 输出结果   一些文本 ~我们已经引入了~ 一些文本. -->

获取焦点 focus

input:focus{
	background-color:yellow;
}


姓: <input type="text" name="fname" /><br>
名: <input type="text" name="lname" /><br>images/pig1.gif

首字母 first-letter

  • font-size:xx-small; 小号字体

  • font-size:xx-large; 大号字体

    p:first-letter {
    color:#ff0000;
    font-size:xx-small;
    }

    今天我回家吃饭,结果发现家里的鱼被水淹死了

伪类前添加元素 before

  • 单词 pseudo-element 伪类

  • :before{} 之前添加元素

  • :after{} 之后添加元素

    h1:before {content:url(images/pig1.gif);}
    h1:after {content:url(images/pig1.gif);}

响应式导航栏

  • 如果屏幕宽度小于900px,导航栏顶部为水平导航栏 大于900px导航栏在右边,且固定的小于400px会变为垂直导航栏

  • 布局文件

    • 主页
    • 新闻
    • 联系
    • 关于
    • 留言

    响应式导航实例

    如果屏幕宽度小于900px,导航栏顶部为水平导航栏 大于900px导航栏在右边,且固定的

    小于400px会变为垂直导航栏

    试着重置浏览器窗口

  • 导航栏顶部为水平导航栏 大于900px导航栏在右边

    {
    margin: 0;
    padding: 0;
    }
    ul.slidenav{ /
    垂直导航栏 /
    list-style: none;
    width: 25%;
    background-color: #f1f1f1;
    position: fixed; /
    固定定位 /
    height: 100%;
    overflow: auto;
    }
    ul.slidenav li a{
    display: block;
    color: black;
    padding: 8px 16px;
    text-decoration: none;
    }
    ul.slidenav li a.active{ /
    被选中 /
    background-color: #555;
    color: white;
    }
    ul.slidenav li a:hover:not(.active){
    background-color: #555;
    color: white;
    }
    .content{ /
    内容标签 */
    margin-left: 25%;
    padding: 1px 16px;
    height: 1000px;
    }

  • 屏幕宽度小于900px,导航栏顶部为水平导航栏

    @media screen and (max-width:900px) { /* 屏幕最大宽度900px */
    ul.slidenav{
    width: 100%;
    height: auto;
    position: relative;
    }
    ul.slidenav li a{
    float: left;
    padding: 15px;
    }
    div.content{
    margin-left: 0;
    }
    }

  • 屏幕宽度小于400px会变为垂直导航栏

    @media screen and (max-width:400px) {
    ul.slidenav li a{
    text-align: center;
    float: none;
    }
    }


下拉菜单

  • 核心原理:先让父类包含的子类隐藏,使用伪类:hover让鼠标移到父类上显示子类元素

  • 实例代码

    • 主页
    • 新闻

    鼠标移到下拉菜单上

    链接显示下拉菜单中

效果图:
在这里插入图片描述


图标文字 iconfont

  • 首先在https://icomoon.io/ 选取和制作iconfont图标
  • 下载解压得到的 font文件

使用步骤

  1. 打开demo.html文件.
  2. 在项目中声明iconfont文件
  3. 使用方法:
    在这里插入图片描述

  • 字体文件目录
    在这里插入图片描述

第一种方法 <span>?</span>

  • 声明iconfont

    @font-face { /电脑中没有的字体,需要在这里声明/
    font-family: ‘icomoon’;
    src: url(‘font/icomoon/fonts/icomoon.eot?7tgo5f’);
    src: url(‘font/icomoon/fonts/icomoon.eot?7tgo5f#iefix’) format(‘embedded-opentype’),
    url(‘font/icomoon/fonts/icomoon.ttf?7tgo5f’) format(‘truetype’),
    url(‘font/icomoon/fonts/icomoon.woff?7tgo5f’) format(‘woff’),
    url(‘font/icomoon/fonts/icomoon.svg?7tgo5f#icomoon’) format(‘svg’);
    font-weight: normal;
    font-style: normal;
    font-display: block;
    }

  • 设置css样式

    span{
    font-family: “icomoon”; /一定要和声明的font-family: "incomoon"相同 否则没有效果;/
    font-size: 100px;
    color: hotpink;
    }

  • html代码布置

    ?

在这里插入图片描述


第二种方法 伪元素添加

  • 声明iconfont

    @font-face { /电脑中没有的字体,需要在这里声明/
    font-family: ‘icomoon’;
    src: url(‘font/icomoon/fonts/icomoon.eot?7tgo5f’);
    src: url(‘font/icomoon/fonts/icomoon.eot?7tgo5f#iefix’) format(‘embedded-opentype’),
    url(‘font/icomoon/fonts/icomoon.ttf?7tgo5f’) format(‘truetype’),
    url(‘font/icomoon/fonts/icomoon.woff?7tgo5f’) format(‘woff’),
    url(‘font/icomoon/fonts/icomoon.svg?7tgo5f#icomoon’) format(‘svg’);
    font-weight: normal;
    font-style: normal;
    font-display: block;
    }

  • 设置样式

    div::after{ /伪元素选择器/
    font-family: “icomoon”;/一定要和声明的font-family: "incomoon"相同 否则没有效果;/
    content: “e9e0”;
    font-size: 100px;
    color: yellow;
    }

  • html布局


阿里巴巴iconfont

  • 需要在此网站上https://www.iconfont.cn/ 下载iconfont包

  • 声明字体和样式

    @font-face {
    font-family: ‘iconfont’;
    src:
    url(‘阿里巴巴/alibaba/iconfont.woff2?t=1642771478703’) format(‘woff2’),
    url(‘阿里巴巴/alibaba/iconfont.woff?t=1642771478703’) format(‘woff’),
    url(‘阿里巴巴/alibaba/iconfont.ttf?t=1642771478703’) format(‘truetype’);
    }
    .iconfont { /定义使用 iconfont 的样式/
    font-family: “iconfont” !important;
    font-size: 160px;
    font-style: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    }

  • html布局


引入阿里巴巴iconfont.css文件

  • 引入 iconfontcss

  • 使用类名调用iconfont字体

    <a href="javascript:;" class="action"><i class="iconfont icon-guatongche"></i></a>
    

按钮下拉菜单

在这里插入图片描述


4个参数 border-color: green turquoise deeppink darkblue ;

在这里插入图片描述

小三角

border-left: solid transparent 10px;
border-right: solid transparent 10px;
border-top: solid #1496bb 10px;


提示框淡入效果

  • 首先将div 的opacity=0 使用动画过度由不透明那到透明

    div{
    /* 淡入 - 1秒内从 0% 到 100% 显示: */
    opacity: 0;
    transition: opacity 1s;
    }

    div:hover{
    opacity:1;
    }

字母小写变大写

  • text-transform: uppercase; /* 大写 */

only

@media only screen and (max-width: 500px){
    .responsive {
        width: 100%;
    }
}

opacity

img:hover{
	opacity:1.0;
	filter:alpha(opacity=100); /* 适用 IE8 及其更早版本 */
}

媒体类型

  • @media screen{} 屏幕
  • @media print{} 打印
  • @media screen,print{}

选择器

  • 属性选择器

    [title]{ /* 下面的例子是把包含标题(title)的所有元素变为蓝色: */
    color: blue;
    }

    Hello world

  • 属性选择器

    [title=runoob]{
    border:5px solid green;
    }

    runoob

  • 属性选择器 多值

    [title~=hello]{ /* 包含指定值的title属性的元素样式的例子,使用(~)分隔属性和值 */
    color:blue;
    }

    Hello world

    Hello CSS students!

  • 包含指定值的lang属性的元素样式

    [lang|=en]{ /* 包含指定值的lang属性的元素样式的例子,使用(|)分隔属性和值: */
    color:blue;
    }

    Hello!

    Hi!

    Ello!

  • 标签属性选择器

    input[type=“button”]{
    width:120px;
    margin-left:35px;
    }

获取焦点 focus

input[type=text]:focus {
  background-color: lightblue;
}

调整大小

  • resize: vertical; 垂直的

css计数 counter

body {
  counter-reset: section;
}
h2::before {
  counter-increment: section;
  content: "第 " counter(section) "章: ";
}

css计数 section subsection

  • 实例

    菜鸟教程(runoob.com)

    HTML 教程:

    HTML 教程

    CSS 教程

    Scripting 教程:

    JavaScript

    VBScript

    XML 教程:

    XML

    XSL

    注意: IE8 需要指定 !DOCTYPE 才可以支持该属性。

在这里插入图片描述


表单css计数

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
ol {
  counter-reset: section;
  list-style-type: none;
}

li::before {
  counter-increment: section;
  content: counters(section,".") ": "; /* 例如 1.1   1.2 */
}
</style>
</head>
<body>
<ol> <!-- 一级 -->
  <li>item</li>
  <li>item   
  <ol><!-- 二级 -->
    <li>item</li>
    <li>item</li>
    <li>item
    <ol> <!-- 三级 -->
      <li>item</li>
      <li>item</li>
      <li>item</li>
    </ol>
    </li>
    <li>item</li>
  </ol>
  </li>
  <li>item</li>
  <li>item</li>
</ol>

<ol>
  <li>item</li>
  <li>item</li>
</ol>

<p><b>注意:</b> IE8 需要指定 !DOCTYPE 才可以支持该属性。</p>

</body>
</html>
<!-- 计数器也可用于列表中,列表的子元素会自动创建。这里我们使用了 counters() 函数在不同的嵌套层级中插入字符串: -->

在这里插入图片描述


内容分为三段

  • 传统方式

    .column{
    float: left;
    width: 33.33%;
    }

  • 伸缩布局 flex

    .row{
    display: flex; /* 伸缩布局模式 这个盒子就会拥有弹性 可弹性盒子 */
    }
    .column{
    flex: 1; /子盒子占分数为1/
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值