Solid

第二次作业

三世轮回 提交于 2020-11-24 13:33:21
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <style type="text/css"> div{ width:200px; height: 300px; background-image:url("picture/xiaogou.png" ); background-repeat: no-repeat; background-size:200px 300px; /* 设置div大小200*300 设置背景图片 地址 picture/xiaogou.z 不让他平铺 设置背景图片图片的大小和div大小相同*/ } li{ font-weight:bolder; list-style:none; } /* li字体加粗 去掉前面的点 */ a { color:black; line-height: 35px; display: block; } /* 设置超链接字为黑色,行高35px 去掉下划线 */ li:hover{color:blue;} /* li鼠标碰到的时候变为蓝色 */ a:hover{color:blue;} /* 超链接鼠标碰到的时候变为蓝色 */ a:link,a:visited{ text-decoration:none; /*超链接无下划线*/ } span{color:red;

如何将Sass编译成CSS

别来无恙 提交于 2020-11-23 20:46:11
本节我们来学习 Sass 的编译,我们写好的 Sass 代码,浏览器是不能识别的,Sass 只不过是作为一个预处理工具,只有将 Sass 代码编译成 CSS 代码后,才能够使用。那么 Sass 要如何编译成 CSS 代码呢,这就是我们本节需要讲到的内容。 Sass 的编译方法有很多,例如: 命令行编译模式:比较简单,可以直接在终端中输入 Sass 指令来编译,本节我们主要讲命令行编译模式的使用。 GUI工具编译:有的比较多的看一工具有 Koala、CodeKit、Scout、Compass.app 等,这些工具都需要安装。 自动化编译:可以使用 Grunt 或者 Gulp 来配置 Sass 自动化编译。 命令编译 命令编译就是在终端中输入 sass 命令来编译 Sass 代码,这种编译方式使用起来很简单。 示例: 假设现在有一个Sass文件,文件名为 style.scss (Sass 文件的扩展名名 .scss ),我们需要将这个文件中的代码编译成 CSS 代码,可以执行如下命令: sass style.scss style.css 命令执行成功后,会自动创建一个 style.css 文件。但是这样有一个问题,就是每次更改了 style.scss 文件中的内容,都需要执行一次编译命令,就会很麻烦。 如果要解决上述问题,可以使用监听命令 --watch ,例如: sass -

C# EPPlus导出EXCEL,并生成Chart表

匆匆过客 提交于 2020-11-23 08:26:42
原文: C# EPPlus导出EXCEL,并生成Chart表 一 在negut添加EPPlus.dll库文件。 之前有写过直接只用Microsoft.Office.Interop.Excel 导出EXCEL,并生成Chart表,非常耗时,所以找了个EPPlus控件。 二 代码部分 System.Data.DataTable dt = new System.Data.DataTable(); dt.Columns.Add("序号", typeof(int)); dt.Columns.Add("数据1", typeof(int)); dt.Columns.Add("数据2", typeof(int)); Random r = new Random(); for (int i = 0; i < 20; i++) { if (i == 6 || i == 16) continue; dt.Rows.Add(i + 1, r.Next(50), r.Next(60)); } ////新建一个 Excel 文件 //string filePath = @"C:\Users\Lenovo\Desktop\" + DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss") + ".xlsx"; //FileStream fileStream = new

C# NPOI导出Excel和EPPlus导出Excel

帅比萌擦擦* 提交于 2020-11-23 05:12:39
转自:http://www.cnblogs.com/tanpeng/p/6155749.html 系统中经常会使用导出Excel的功能。之前使用的是NPOI,但是导出数据行数多就报内存溢出。 最近看到EPPlus可以用来导出Excel,就自己测了下两者导出上的差异。 NPIO官网地址: http://npoi.codeplex.com/ EPPlus官网地址: http://epplus.codeplex.com/ 添加NPOI、EPPlus类库dll使用的是NuGet添加。 在类库References右键Manage NuGet Packages...,之后选择添加对应的dll。 测试结果显示,相同数据结构的数据,EPPlus的导出能力比NPOI强。 20列,NPOI能导出4万数据,导出5万数据时报内存溢出。 EPPlus能导出20万以上数据,导出23万测试时内存溢出。 NPOI导出: 1 private static MemoryStream ExportXlsx(DataTable dt) 2 { 3 XSSFWorkbook workbook = new XSSFWorkbook(); 4 ISheet sheet = null; 5 6 int headRowIndex = 0; 7 string sheetName = "Sheet1"; 8 if (!string

一篇文章带你了解CSS3按钮知识

蓝咒 提交于 2020-11-22 09:50:48
在实际开发中,按钮的应用是必不可少。使用 CSS 来制作按钮,可以更有新意,更有趣,也可以自定义自己想要的样式。 一、平面样式CSS按钮 平面样式按钮的使用现在非常流行,并且符合无处不在的平面设计趋势。,这些的平面样式按钮效果很好看。 以下代码是按钮处于正常的情况下的状态。 例: .button { background-color: #4CAF50; /* Green */ border: none; color: white; padding: 15px 32px; text-align: center; text-decoration: none; display: inline-block; font-size: 16px; } 1. 按钮颜色 颜色:Green ,Blue, Red, Gray ,Black。 可以使用 background-color 属性来设置按钮颜色。 例 .button1 { background-color: #4CAF50; } /* Green */ .button2 { background-color: #008CBA; } /* Blue */ .button3 { background-color: #f44336; } /* Red */ .button4 { background-color: #FFC0CB; color:

canvas实现验证码功能

自作多情 提交于 2020-11-21 13:32:44
我们在做一些后台系统登录功能的时候,一般都会用到验证码,最多的就是后台生成的验证码图片返回给前端的。也可以不调用后端接口,前端使用canvas直接生成验证码。 由于功能过于简单,不需要多少代码和文字说明,下面直接贴出代码。 1、代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>canvas验证码</title> <style> .input - val { width: 200px; height: 32px; border: 1px solid #ddd; box -sizing: border- box; } #canvas { vertical - align: middle; box -sizing: border- box; border: 1px solid #ddd; cursor: pointer; } .btn { display: block; margin - top: 20px; height: 32px; width: 100px; font - size: 16px; } </style> </head> <body> <div class="code"> <input type="text" value="" placeholder="请输入验证码

AkShare-指数数据-全球指数

微笑、不失礼 提交于 2020-11-21 10:13:31
作者寄语 本次修改原来的 「全球指数数据」 接口,重命名函数和增加频率字段,可以设定:日、周、月的数据频率。 更新接口 "index_investing_global" # 全球指数数据接口 全球指数数据 接口: index_investing_global 目标地址: https://cn.investing.com/indices/ 描述: 获取世界主要国家的各种指数, 由于涉及国家和指数( 「1000」 + 个指数)具体参见国家-指数目录具体的调用方式可以参照: 先查询指数所在的国家名称; 复制网页上国家名称(推荐复制), 如 「美国」 ; 复制所显示的具体指数名称(推荐复制, 如果英文中间有空格, 也需要保留空格), 如 「美元指数」 ; 也可以调用 「ak.index_investing_global_country_name_url("美国")」 获取需要国家的具体指数名称 在安装 AkShare 后输入, 如 「ak.index_investing_global(country="美国", index_name="VIX恐慌指数", period="每月", start_date="2005-01-01", end_date="2020-06-05")」 ; 稍后就可以获得所需数据. 限量: 单次返回某一个国家的具体某一个指数, 建议用 for

Revit二次开发知识分享(九)判断墙与墙是否相连

冷暖自知 提交于 2020-11-21 06:11:22
在运用的时候,会遇到想找收集相链接的墙,用API提供的方法的话,总是会出错。会漏掉一些自己需要的墙,因此,下面封装了一个可以计算墙的是否连接的方法,先上代码后讲解Just Do It!!! public bool IsConnected ( Wall judgeWall , Wall proWall ) { bool result = false ; Line judgeLocationLine = ( ( judgeWall . Location as LocationCurve ) . Curve as Line ) . SetZ ( ) ; Line proLocationLine = ( ( proWall . Location as LocationCurve ) . Curve as Line ) . SetZ ( ) ; //只对平行的处理 if ( ! judgeLocationLine . Direction . IsParallel ( proLocationLine . Direction ) ) return result ; var judgeGeo = judgeWall . get_Geometry ( new Options ( ) ) ; Face jugeDownFace = GeoEx . GetGeoEleDownFace (

python图像处理-滤镜的算法原理实现

早过忘川 提交于 2020-11-21 04:18:24
前言 本系列课程是针对无基础的,争取用简单明了的语言来讲解,学习前需要 具备基本的电脑操作能力, 准备一个已安装python环境的电脑。如果觉得好可以分享转发,有问题的地方也欢迎指出,在此先行谢过。 前言 上一篇文章我们利用PIL自带的路径方法实现了一些滤镜的效果,单纯从使用的角度来说已经够我们使用了,但是如果能够弄清楚它们背后的原理,相信应该是会对我们更有帮助的。 在正式讲解之前,有一些基本的概念还是要在重新了解一下。 图片是由一个个像素组成的,每个像素又是由RGB三种颜色数值组成的(这里指的是RGB模式图片),灰度图是由0-255单个数值组成的。所有的图片处理,本质上都是对像素值进行处理。 灰度滤镜实现 灰度图我们知道是由单一数值0-255组成的,一张RGB三种颜色组成的图片要变成灰度图,需要将它们的三种颜色值设为相同即可。由于人眼对绿色的敏感度最高,红色次之,对蓝色的敏感度最低,因此,当权值 G > R > B时,所产生的灰度图像更符合人眼的视觉感受。 所以将颜色的RGB设置为相同的值即可使得图片为灰色,一般处理方法有: 1、取三种颜色的平均值 2、取三种颜色的最大值(最小值) 3、加权平均值:L = 0.299R + 0.587G + 0.114*B 黑白滤镜实现 黑白效果实现和滤镜有点类似,只不过这里需要自己设定一个阈值,将每一个像素点的平均值与阈值100(这个不是固定的

用Javascript 实现倒计时

北城余情 提交于 2020-11-21 02:28:38
用Javascript 实现倒计时 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> .time1{ width: 500px; height: 300px; background - color: #cccccc; color: red; border: 1px solid green; margin: 100px auto; } </style> </head> <body> <div class="time1"></div> <script> var div=document.getElementsByClassName("time1")[0 ]; // 定义一个计时器 setInterval(fn,1 ); // 封装成功方法,每隔固定时间调用一次 function fn() { // 1.获取时间差,将来的时间剪去现在的时间 var futureTime= new Date("2018/09/08 01:00:00" ); var nowTime= new Date(); // 时间差(毫秒值)=未来时间-当前时间 var sumMS=futureTime.getTime()- nowTime.getTime(); // 2.把时间差转化成