开始写前端,使用WebStorm,记录下使用过程

参考

WebStorm 初步使用 & HTML5 学习报告
webstorm怎么运行调试html
WebStorm 快速开发教程 --CSS篇
Webstorm快捷键、自动补全
webStorm快捷键总结

快捷键

快捷键参考卡片

打开方式

内容

网上没有现成的翻译,英文一般

浏览器预览

可以自定义路径,,就是不能自己选图标,,算了还是选择默认的chrome吧

Emmet

webstorm是默认自带Emmet的,快捷键就是tab

参考手册:前端开发必备!Emmet使用手册

官网API:http://docs.emmet.io/cheat-sheet/

可以下载PDF版,Edge浏览器看PDF比chrome好多了

HTML快捷键

来源:webStorm快捷键总结

html:
47:html5结构:html:5 按下tab
48.引入CSS:link:css 按下tab键
49.引入js : script:src 按下tab键
50.ul及li:ul+ 按下tab键
51.<a href="http://"></a>:a:link 按下tab键
52.<a href="mailto"></a>:a:mail 按下tab键
53.get表单:form:get 按下tab键
54.hidden输入框:input:hidden 按下tab键
55.id:name : div#name 按下tab键
56.class:name : div.name 按下tab键
57.class:one,two : div.one.two 按下tab键
57.生成一个包含link的head : head>link:css
58.两个p : p+P
59.3个p : p*3
60:创建ul下有个li同时class分别为item1,item2.。。。。:ul>li.item$*6

实战

效果图

分析有几个部分:
logo和名字:
左侧背景图片:
右侧登陆部分:
背景:应该用了渐变色
账号,密码,验证码,登陆按钮

class类名:关于Html class id命名规范

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>login</title>
    <link type="text/css" rel="stylesheet" href="css/login.css"/>
</head>
<body>
<div class="login-left">
    <div class="logo-img"></div>
    <p class="logo-text">园区网格化监测平台</p>
</div>
<div class="login">
    <p class="login-title">账号登录</p>
    <p class="prompt-input">请输入账号</p>
    <input type="text" class="userName" placeholder="你的手机号/邮箱">
    <p class="prompt-input">请输入密码</p>
    <input type="text" class="password" placeholder="密码">
    <p class="prompt-input">请输入验证码</p>
    <input type="text" class="captcha" placeholder="验证码">
    <div class="safecode"></div>
    <input type="submit" value="登录" class="loginBtn">
</div>
<script type="text/javascript" src="js/login.js"></script>
</body>
</html>

路径格式

.a{background-image:url(图片路径)}

图片路径可以是绝对路径、根相对路径和文档相对路径

绝对路径是包括服务器协议的完全路径,比如“百度主页”,完全路径为:https://www.baidu.com/index.html,如果所要链接当前站点之外的文档,就必须使用绝对路径。

相对路径包括根相对路径(Site Root)和文档相对路径(Document)两种。

根相对路径(也称相对跟目录)的路径以“/”开头,路径是从当前站点的根目录开始计算。比如我们前面建的D盘myweb目录就是名为“myweb”的站点,这时“/index.htm” 路径,就表示文件位置为D:\myweb\index.htm。根相对路径适用于链接内容频繁更换环境中的文件,这样即使站点中的文件被移动了,其链接仍可以生效。

文档相对路径就是指包含当前文档的文件夹,也就是以当前网页所在文件夹为基础开始计算路径。比如,当前网页所在位置为 D:\myweb\mypic,那么:

  • “a.htm”就表示 D:\myweb\mypic\a.htm;
  • “../a.htm”相当于 D:\myweb\a.htm,其中“../”表示当前文件夹上一级文件夹
  • “img/a.gif”是指 D:\myweb\mypic\img\a.gif,其中“img/”意思是当前文件夹下名为 img 文件夹
  • ./是当前目录
  • ../是父级目录
  • /是根目录

文档相对路径是最简单的路径,一般多用于链接保存在同一文件夹中的文档。

背景图片样式

CSS3 background-size 属性

语法

background-size: length|percentage|cover|contain;

测试

暂时这样写:

.login-left {
    background-image: url("../images/login.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 80%;
    height: 770px;
}

定位

CSS 定位 (Positioning)

一切皆为框
divh1p 元素常常被称为块级元素。这意味着这些元素显示为一块内容,即“块框”。与之相反,spanstrong 等元素称为“行内元素”,这是因为它们的内容显示在行中,即“行内框”。

您可以使用 display 属性改变生成的框的类型。这意味着,通过将 display 属性设置为 block,可以让行内元素(比如 <a>元素)表现得像块级元素一样。还可以通过把 display 设置为 none,让生成的元素根本没有框。这样的话,该框及其所有内容就不再显示,不占用文档中的空间。

CSS position 属性
通过使用 position 属性,我们可以选择 4 种不同类型的定位,这会影响元素框生成的方式。position 属性值的含义:
static:默认属性,元素框正常生成。块级元素生成一个矩形框,作为文档流的一部分,行内元素则会创建一个或多个行框,置于其父元素中。
relative:元素框偏移某个距离。元素仍保持其未定位前的形状,它原本所占的空间仍保留。
absolute:元素框从文档流完全删除,并相对于其包含块定位。包含块可能是文档中的另一个元素或者是初始包含块。元素原先在正常文档流中所占的空间会关闭,就好像元素原来不存在一样。元素定位后生成一个块级框,而不论原来它在正常流中生成何种类型的框。
fixed:元素框的表现类似于将 position 设置为 absolute,不过其包含块是视窗本身。
提示:相对定位实际上被看作普通流定位模型的一部分,因为元素的位置相对于它在普通流中的位置。

CSS float 属性

渐变色

渐变色有两种:径向和渐变

再说CSS3渐变——径向渐变
再说CSS3渐变——线性渐变

W3C标准线性渐变语法

linear-gradient([[<angle> | to <side-or-corner> ],]?<color-stop>[,<color-stop>]+)

W3C标准线性渐性语法包括三个主要属性参数:第一个参数指定了渐变的方向,同时决定了渐变颜色的停止位置。这个参数值可以省略,当省略不写的时候其取值为“to bottom”。在决定渐变的方向主要有两种方法:

  • :通过角度来确定渐变的方向。0度表示渐变方向从下向上,90度表示渐变方向从左向右。如果取值为下值,其角度按顺时针方向旋转。
  • 关键词:通过关键词来确定渐变的方向。比如“to top”、“to right”、“to bottom”和“to left”。这些关键词对应的角度值为“0deg”、“90deg”、“180deg”和“270deg”。除了使用“to top”、“top left”之外,还可以使用“top left”左上角到右下角、“top right”左上角到右下解等。
  • 第二个和第三个参数,表示颜色的起始点和结束点。大家可以在从中插入更多的颜色值。

有两个颜色,两个方向,如上图, ,#2899f5#2f5cb7,感觉PS应该是用了两个图层,暂时写不出CSS代码

box-sizing

box-sizing

box-sizing 属性有两个可选值:

  • content-box 是默认值。div的宽高只包含内容,不包含内边距,边框,外边框
  • border-box ,div的宽高包含边框,内边距,内容,不包含外边框

盒子模型

盒子模型
通过建立一个导航栏了解盒子模型

这个是浏览器F12里的

  • 内容(content):这一领域涉及元素的实际内容、 文本、 背景、 图片等等。它结束于内容区域的边缘。参照上图,指代蓝色盒子。

  • 内边距(padding):内边距延伸到内边距边缘。在内容区域的任何内容(例如背景或图像)将延伸到内边距。内容区域和内边距边缘之间的大小填充由padding属性控制。请参阅上方图表的绿色区域。

  • 边框(border):边框延伸到边框的边缘。默认情况下,背景扩大到边框的下方。边框的厚度由border属性控制。参阅上方图表的黄色区域。

  • 外边距(margin):外边距延伸到外边距的边缘。然而,它是分隔元素及其邻近元素的"空"区域。通过margin属性控制外边距的大小。这里还有一个我们需要注意的一个特定行为的外边距。它被称为 margin collapsing(外边距叠加).

当相邻块元素的外边距结合为单一的外边距时,就会取两者之间较大的值,这时这种情况就会发生。这种现象只出现垂直方向上,即margin-top和margin-bottom。水平边距(margin-left和margin-right)永远不会发生叠加。这里有一些常见的外边距叠加的情景。

上下外边距会叠加,左右不会叠加。叠加时,按外边距最大,有负值时按和。如果父元素无边框,子元素的外边距也会叠加。

input的默认宽度

登陆按钮的宽度要和输入框一致,那输入框就不能是默认宽度,设置成依赖父元素的百分比最好了,,据说不同浏览器对于输入框的默认宽度也不一样,也就是为了兼容性,需要指定输入框宽度。

svg图标

输入框里最前面是个svg图标

SVG文档
SVG系列教程:SVG简介与嵌入HTML页面的方式

input中加入图片的做法

做法的原理其实很简单:

  1. 就是给input添加一个背景图片
  2. 背景图片不要平铺,设置padding-left的值为背景图片的宽度

HTML中嵌入SVG图片的N种方式

使用div的背景图片

<div style="display:block;width:330px;height:240px;background: url(./test.svg) no-repeat;background-size: 100%;" ></div>

SVG 图像入门教程

SVG 是一种基于 XML 语法的图像格式,全称是可缩放矢量图(Scalable Vector Graphics)。其他图像格式都是基于像素处理的,SVG 则是属于对图像的形状描述,所以它本质上是文本文件,体积较小,且不管放大多少倍都不会失真。

感觉SVG的图形是用代码画出来的

WebStorm记录(1)的更多相关文章

  1. WebStorm记录(3)

    连通接口 接口 我自己理解前后端传输数据都是通过ajax方式 一般使用get和post两种方式传输数据 GET 接口 接口描述 获取登录验证码图片及密钥 HTTP方法 POST URL /captch ...

  2. WebStorm记录(2)

    继续效果图 CSS初始化 前面理解错了,背景图应该铺满 <div class="bg"> html,body,*{ /*盒子模型使用边框模式*/ box-sizing: ...

  3. windows WebStorm常用快捷键记录,常用的都在这儿找扒

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Webstorm version 2018.2  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. Ctrl + Shift + ...

  4. 记录一个webstorm的设置或者说小技巧

    在 html 的元素中,如果输入属性,默认会填充 引号,在 react 书写中非常不方便. 其中的JSX很多时候是不需要 quotation 的,只是需要一个 括号 {} 即可. 自己找了下webst ...

  5. e2e 自动化集成测试 架构 实例 WebStorm Node.js Mocha WebDriverIO Selenium Step by step (五) 如何让窗体记录登录状态Session

    在写自动化测试的Node.js脚本时, 时常需要测试所写的case, 可能都需要去重新登录一遍,这将相当的耗时, 好在Selenium都借了Session的机制, 如果在最初的浏览器没有关闭的情况下, ...

  6. webstorm软件使用记录

    右边的那条线的去除:setting-editor-appearance-show right margin 勾选去掉

  7. 记录我这一年的技术之路(nodejs纯干货)

    2015年12月28日23:19:54 更新koa应用.学习型网站和开发者工具等 coding伊始 开始认认真真的学习技术还是2015.10.21日开始的,记得很清楚,那天,是我在龙湖正式学习的第一天 ...

  8. WebStorm 2016 最新版激活(activation code方式)

    WebStorm 2016 最新版激活(activation code方式) WebStorm activation code WebStorm 最新版本激活方式: 今天下载最新版本的WebStorm ...

  9. WebStorm 常用功能的使用技巧分享

    WebStorm 是 JetBrain 公司开发的一款 JavaScript IDE,使用非常方便,可以使编写代码过程更加流畅. 本文在这里分享一些常用功能的使用技巧,希望能帮助大家更好的使用这款强大 ...

随机推荐

  1. virtio,macvtap,sriov

    本文转自http://xiaoli110.blog.51cto.com/1724/1558984 一个完整的数据包从虚拟机到物理机的路径是: 虚拟机--QEMU虚拟网卡--虚拟化层--内核网桥--物理 ...

  2. 【bfs】拯救少林神棍(poj1011)

    Description 乔治拿来一组等长的木棒,将它们随机地砍断,使得每一节木棍的长度都不超过50个长度单位.然后他又想把这些木棍恢复到为裁截前的状态,但忘记了初始时有多少木棒以及木棒的初始长度.请你 ...

  3. 「FJOI2016」神秘数 解题报告

    「FJOI2016」神秘数 这题不sb,我挺sb的... 我连不带区间的都不会哇 考虑给你一个整数集,如何求这个神秘数 这有点像一个01背包,复杂度和值域有关.但是你发现01背包可以求出更多的东西,就 ...

  4. NOIP2017题解

    T1小凯的疑惑 小凯手中有两种面值的金币,两种面值均为正整数且彼此互素.每种金币小凯都有 无数个.在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付的.现在小 凯想知道在无法准确支付的物品中, ...

  5. bzoj1218 激光炸弹

    bz上难得一见的水题啊. 我们发现:这个SB居然只要枚举就行了!!! 我TM...... /****************************************************** ...

  6. 区间最深LCA

    求编号在区间[l, r]之间的两两lca的深度最大值. 例题. 解:口胡几种做法.前两种基于莫队,第三种是启发式合并 + 扫描线,第四种是lct + 线段树. ①: 有个结论就是这个答案一定是点集中D ...

  7. 【codevs4927】线段树练习

    题目大意:维护一个序列,支持区间加.区间染色.区间最值查询.区间和查询. 题解:对于区间赋值操作来说,维护一个赋值标记,注意,这里不能直接用赋值的值直接维护,因为不像加法标记,0 表示不用处理,这里 ...

  8. 如何在疲劳的JS世界中持续学习

    作者简介 cnfi 蚂蚁金服·数据体验技术团队 本文翻译自<Stay updated in JS fatigue universe>,并对内容有所补充和修改. 部分内容参考<HOW ...

  9. NCBI通过氨基酸位置查看相邻SNP

    进入NCBI网站 在SNP的搜索框中输入SNP位点,比如“rs52811957” 在弹出的对话框中选择“Gene View” 进入以后会显示该变异相邻SNP.原始氨基酸.变异后的氨基酸.positio ...

  10. linux系统调用之网络管理1

    getdomainname 取域名 setdomainname 设置域名 gethostid 获取主机标识号 sethostid 设置主机标识号 gethostname 获取本主机名称 sethost ...