tp剩余未验证内容-6

杂项

系统中的电感线圈元件, 虽然不消耗电能, 可是会 占用系统的容量(至关于占用资源可是不作事), 会使系统 的发电量的使用效率下降, 线路损耗增大, 发出一样有功用电量所需的设备容量扩大php

将感性元件和容性元件串接在一块儿的好处是: 感性负载电流 的相位 落后 系统电压(这个是做为参考电压使用的) 90度(理解: "电场先被线圈铁芯吸取, 转变为磁能 而后才有电流, 因此
电感电流的相位更落后"), 而容性负载电流的相位比 系统电压 提早 90 度, 因此 二者若是串联的话, 恰好抵消, 这样整个系统对外 就显示为 阻性. 既不是感性, 也不是容性的.从而使系统
的 有功效率更大.css

电感线圈的磁场能 存储在哪里?html

  • 有的说存储在 磁芯中, 磁芯里面能够看作包含不少的 磁畴(mag'netic domain) 一个磁畴能够当作是一个 微型的 小磁铁, 因为它们的N极和S极排列是随机的, 不规范, 因此相互抵消, 在外加电场(恒流源)的做用下, 在电场-磁场的磁化下, 磁畴排列规范一致, 因此向外显示出明显的 N极和S极磁性来
  • 但也有的说, 磁场能存储在 气隙中?

二极管 和三极管的后缀?
后缀都是 -ode [2ud], di-ode [dai 2ud], triode tri-ode [trai 2ud] ,
三极管: 泛指 三个电极的管子? 包括 普通三极管晶体管, 晶闸管? T: transistor?
VT : v能够是 V型 v-type, 或真空管: vacuum ['v2kjum] , 因此 三极管和晶闸管都是用 VT来表示的
VD: v-type diode 是指 v型二极管, 常指 续流二极管.前端

VT晶闸管, 可控硅, 其实跟 二极管相似, 也是单向导通, 可是跟普通二极管不一样的是, 他的导通不是 "自然的", 而是有条件的: 须要在 控制极G 给以触发电流, 导通后, 即便触发电流消失,
vt也持续导通工做. 因此 晶闸管被叫作 触发开关- 带触发点的 二极管开关.
所以, vt也能够用来作半波整流或 全波 整流.html5

全波整流, 也叫桥式整流, 是指 四个 diode/或 vt晶闸管, 在每个桥 的 两个元件之间 取一个抽头出来.造成回路.java

vd是 续流二极管, 主要是 用在(并联在) 大功率感性负载 电路中, 是给 电感元件的 反向 感应电动势 提供一个 释放电流,消耗电流的回路, 防止 大功率电感的反向感应电动势 (可达1000v)击穿损坏 电路中的 (超过三极管等元件的反向击穿电压)三极管等元件.jquery

感应电动势的方向?
感应电动势的特性是: 老是 企图 维持 原来的电流(方向不变), 所以, 感应电动势 必然跟 外加的 电路电压的方向是相反的, 因此叫 反向 感应电动势.
而 vd 续流二极管是工做在 "正向导通"的 状态下的, 因此, vd老是 跟 原来的 (系统电压方向 )电路 反向 并联的.linux

为了保护 续流二极管自己, 有事 也须要在vd中 串联一个 限流电阻(电阻的做用 就是用来 分压 限流的 )


常说的 "双导航"就是 所谓的 "双排导航", 导航分为两排, 实际上对于一些大型网站, 导航更多,可能被分红 三排/四排 等之多.
可是对于一些 小型的 简单网站, 是不须要 双导航的.css3

不要轻视模仿, 关键是 要 吸取消化 并有所提升. 创新是创建在模仿的上的...
做为 页面设计者, 必需要懂得 首页/主页设计 的 一些 准则...c++

所谓的扁平结构, 是相对于 纵深结构/树形结构而言的, 扁平的话, 它的目录层次比较少,比较浅, 文件基本上都放在根目录下, 对于网页的扁平结构来讲,就是指 大多数内容都直接放在/呈如今首页上... 而没有过多的一级目录/二级目录和页面等.

网站主页的设计 能够参考: https://www.wenku1.com/news/446427D0AB63F06C.html 网站主页设计所要 解决的12个任务
网站服务包括 网站的内容 + 网站的功能.
内容是指直接呈现出来 的, (我能在这里找到什么),
功能是 指 业务逻辑的 处理, 须要业务模块的支持(我能作什么?)
网站要给出网站内容和功能的概貌, 服务是怎样组织的, 这项工做一般是由导航(栏) 来实现的.

总之, 网站正式开始写以前, 你得先要设计好 网站的 目录结构和 导航(连接)结构. 这些结构的设计, 总的出发点就是 "这样作, 是否对用户浏览有利, 是否对用户体验有利, 而不仅是考虑 是否对本身有利 对本身(赚钱)有利?"

网站目录和连接的 设计, 一切要从用户的角度 出发. 好比

  • 凡是用户不会点击的 目录和连接都 "是没用的"??, 都应该删除和更改.
  • 目录设计和连接层级 都不该该 超过3层. 连接 "尽量" 扁平化, 是为了 方便 搜索引擎 收录 网站的内容 (蜘蛛更喜欢扁平化网站)
  • 对一些企业网站 我的介绍性的 等小网站, 目录不宜过细, 应该给 "网站"瘦身, 过细反而不容易找到 用户须要的信息.
  • 小网站 不建议左侧导航和下拉框
  • 要始终 从用户的角度考虑, 能让用户减小点击次数, 直接呈现的内容, 就不要设计得太深, 只有这样才能让目录结构/和 首页结构 设计得更合理.才利于seo优化和网站排名.

大型网站的架构优化?

  • 由于数据库和 web应用, 放在同一台服务器上的话,它们会相互影响, 致使响应变慢. 因此, 首先要从物理上分离数据库和应用, 部署在两台机器上, 虽然技术上没有什么改变, 可是确实会起到效果.
  • 使用squid机制. 当 client 请求对数据库的操做太多, 会引发数据库 链接竞争激烈, 数据操做过多引发响应变慢, 可是又不能把数据库链接数开得太多, 不然会引发数据库的操做压力. 因此 须要 把对数据库的操做结果 缓存起来, 之后再遇到一样的数据操做请求, 就能够直接发给客户端, 再也不作数据库链接和操做.

    squid是一种缓存代理服务器 = 代理proxyer +缓存cache, 把client 对 服务器的请求 拦截下来, 让squid服务器 去向目标服务器请求, (这其中就有数据库链接和操做等), squid服务器得到数据后, 一方面将结果发送给 客户端, 另外一方面 会将结果 cache缓存起来...下一次接收到一样的客户端请求时, 就把保持在 "内存"中的 数据发出去. squid支持 http, ftp, gopher和 ssl 协议等.

  • 除了使用squid动态缓存外, 还可使用 esi/ESI (也是一种缓存服务器) 静态缓存
  • 最后就是 再增长一台 webserver应用服务器 作流量分流, 和负载均衡等

整个目录结构, 包括:首页 > 一级页面 > 二级页面(注意首页(只有一个页面) 不是 一级页面). 连接结构有 "星状 和 树状 "连接结构.一般 首页和一级页面之间用 星状连接结构, 而一级页面和二级页面之间用 树状 连接

关于images目录, 不该该将全部的图片 都放在 根目录"/"下, 或 所有都Public目录下, 应该按 模块Home\Admin, 或主栏目 分别进行存储. 分别建立image目录, 这样便于维护和管理?


transform: 变换
css3中的transform主要有四个值: translate平移, rotate旋转, scale缩放,skew扭曲.
主要有两种单位, 一个是px, 一个是度数 degree: deg
通常有两个方向上的数值,若是只有一个, 则第二个数值默认跟 第一个数值相同.

样式须要分别对chrome firefox等浏览器单独定义吗?

  • 若是你的项目 指定使用 "现代浏览器" + "w3c标准浏览器" 则不须要单独定义
  • 若是是 css2的样式 , 很成熟很经常使用的属性了, 就不须要单独定义, 主要是针对 css3 比较新的样式 , 则须要单独定义 好比: -webkit-box-shadow, -webkit-box-sizing 等
  • 若是你的项目 须要兼容低版本的 浏览器 则须要单独 分别 定义
  • 若是要单独定义, 则 要加上 以 横线开头的前缀 -webkit, -ms -moz, -o等

关于css3的box-sizing样式? 参考: http://www.cnblogs.com/liuminghai/p/4293254.html

  • content-box | padding-box | border-box | inherit 意思是 如何计算div 的 box宽度 方法. 只影响宽度, 不影响高度
  • box-sizing是指 样式属性的 width 包含哪些部分. 这样不一样的 box-sizing box计算方法所获得的区块将不同, 这个将影响 (若是block的 padding , border-width 等属性改变时, 是否影响 区块的 总体宽度, 是否会对周围的元素 产生影响? 是否影响里面的内容 的宽度...)
  • 浏览器默认的 一个块block所占的宽度是: width属性值 + padding的值 + border的宽度值 + margin宽度值, 可是 使用 box-sizing后, 元素的宽度 就会发生变化了, 这个box-sizing样式是用来规定 div/block 元素的 width属性值将包含哪些范围.
  • content-box 是指 width属性值 只包含 内容的宽度, 这个跟 浏览器默认的计算方法是同样的. 是默认的 值
  • padding-box是 指 元素的 width属性值 将应用到 padding 内边距 所包含的区域, 即 width属性值 将包含 内容区域的宽度 和 左右padding的宽度, 这样原来默认的内容区域的宽度 将 会被 减小.
  • border-box是 指 元素的 width属性值 将应用到 边框线所包含的区域, 即 width属性值 将包含 内容区域的宽度 加上 左右padding的宽度 再加上 border的宽度值 , 这样原来默认的内容区域的宽度 将 会被 更大程度的 减小. 好比 原来width=100px的元素, 若是padding=10px border-width=5px, 加上 box-sizing: border-box样式后, 其内容区域 的宽度将是: 100px - 10px2 - 5px2 = 70px

一般, 网站首页的组成: 顶端是 header(主要包括logo和网站导航 和重要功能) 而后是 主体 main(一般main 分红 两栏结构), 左边是主要内容右边则是一些 小块的 分块区, 这些分块区则是 网站内容的 导读, 或 快捷功能区等. 好比 ??dn的页面布局就是这样.

有时候, 左边能够是一些 小条的 窄条的 功能快捷方式, 也能够没有.

一般, 网站的header区域是 贯穿的, 是整个屏幕宽度的100%. 而主体部门的宽度 则不会贯穿, 两端 应该 有适当的留白.
而main主体部分的背景颜色, 应该/最好是有一点 很浅的灰色, 好比 #eee, 而实际元素的背景用白色, 这样主体内容展现框和 右端的分块区 的 边框线和 区域分割 划分就很明显. 好比 github的配色就是这样的

网页设计要讲究 编排和布局. 要事先画出 页面的编排. 能够用手工在纸上画出, 也能够用软件画出.

网页版面布局主要是指网站的主页的版面布局, 其余页面的版面跟主页的版面布局是同样的

多级级联下拉选择框插件? 参考 https://blog.csdn.net/westonduo/article/details/48006413#!/_zfv8jiwf1sb57b9 下载地址 https://github.com/tuopula/jquery_chained

  • 网址 github是单数, 最后的地址是下划线 jquery_chained , 虽然引用的文件是分开写的: jquery.chained.js 和 jquery.chained.remote.min.js (这两个版本, 前面的 jquery.chained. 是相同的, 只是后面的不一样...remote.js)
  • 使用在github上的 tuupola的插件, 有两个版本, 本地的不须要ajax的版本是 jquery.chained.js, 若是是ajax远程获取数据的用jquery.chained.remote.js
  • js中 使用两个 选择框的id来 "连接" 而不是选项, 好比 select id="s1"... select id="s2" 那么两个选择框连接起来的js就是: $('#s2').chained('#s1') <==> $('#s2').chainedTo('#s1')
  • 要想使两个选择框 连接, 则要经过class, 要使第二个选择框的option 加上class属性, 并且class 要等于 上一级select中option选项的value值.
    这个js插件 就是根据value和扫描下一级select中的option 的class属性, 来决定下一级 哪些选项要显示出来.

    下一级option的类class 有几种状况:

    一是只在某一个上级option的选项中出现, 那么这时候 class就只有一个值
    二是, 下一级的option 对应 多个父select选项, 即下一级的某个option 能够在多个 上一级select/option选项选中的时候, 出现, 那么下一级的option的class 就包含多个对应的类: 好比<option class="s1_v1 s1_v2" value="s2_v1">s2的第一个选项</option>
    三是, 第三级的选项, 必须同时对应指定的 第一级和第二级指定的选项值, 那么此时第三级的 option的class 要写成 <option class="s1_v1\s2_v1" value="s3_v1"> 第三级的某个选项</option>

  • 若是是使用 ajax 远程访问, 则要使用 remoteChained方法: $('#s2'). remoteChained('#s1', '/remote/ajax_return.php');

  • 若是是远程ajax返回 则只须要把第一级的select中的option选项书写 完整, 下一级的select, 就不写opton了, 由于这些option将会被ajax返回内容所填充.

script标签的属性?

  • id属性? 事实上, 任何html标签都有id属性, 甚至 像 link/css标签, js标签等都有 id属性值(作动态引用link/css或 js)经过id来定位文件?
  • script的全部属性 包括 [type, src, charset]]等 都是可选的 即你彻底能够不写任何 属性值! 并且像charset等都是 "废弃" "一般被浏览器所忽略"的属性.

markdown的代码段中, 能够 根据不一样的 语言,好比c/java/.net/php/c++等 有 不一样颜色的关键字高亮, 使用的是 "syntaxHighlighter.js"插件, 因此能够在 引导符 后面加上 语言名称.下面是两端 加语言名称和不加语言名称 对高亮解析的不一样(第一个是加html语言名称的)

<div class="foo"> foo</div>
<div class="foo"> foo</div>

网页的版面布局有多种, 好比: 厂字型, 回字型,同字型,三字型, 框架型等, 根据你的须要选择合适的版面.

若是一个元素同时有 aria-label和 aria-labelledby的属性, 那么读屏软件会优先读出 aria-labelledby的内容.
这些属性都是为读屏软件这些辅助功能提供的...

bs的 .show和.hide类, 可以实现相似jquery显示和隐藏的动画, 可是它并无用js, 而是直接用的 css的 display: block !important 或none来实现的.

???bs中的.text-only类 将页面元素所包含的文本内容 替换为 背景图? 事实上, 是没有 text-onlya这个类的?

关于css的伪类和伪元素?

  1. 伪类是用在css中, :before之类的表示的, 而 伪元素是在 html中, 用 ::befor来表示的 而为了兼容都用 一个冒号表示
  2. css的伪类 是 像幽灵同样的存在,可是其效果 对用户来讲, 是真的 存在的, 并且能够在 元素的 开头 插入内容和图标等, 并且插入的内容在页面的html源码中是不可见的, 只能是在 css里可见
  3. 伪类必须有content属性 哪怕这个属性是空的 '', 或只有一个 空格' '. content属性的值包括: none, normal, 实际的字符串"...." 还能够是一些特殊值, 好比 attr(title, href)等. 内容能够直接拼接, 不用任何运算符号的

  4. 好比: h1:before{content: url('some/icon.jpg');} 常常看到 网页中 , 统一的, 在全部的h1标题前 都插入一个 小图标.


在ff中的调试面板中, 鼠标箭头符号只是用来pick 元素的, 此时box model的computed 并不会显示当前被选择的对象的 尺寸, 只有当你 单击了这个元素后 , 被inspector后, 才会显示 元素的 computed尺寸.

bs的 container类样式 只是 : left/right-padding:15px; 上下padding=0; | 上下margin=0; 左右margin: auto
因此 container类自己是没有 边框的!

在css样式中, 要引用/表示图片, 须要用 url('图片地址')的方式, 不能直接写 '图片地址'的方式. 好比: background-image: url('...');

  • 并且, 样式表中的样式, 并非添加到 使用样式的html文件中, 而是 仍然放在 css文件中的.
  • 所以, 样式表中的 图片相对地址 (即url图片地址) 要相对于 当前这个css文件的路径(这个相对关系是固定的), 而不是 相对于要使用的 html文件的路径, 由于使用css样式 的html文件能够是任意的不一样位置处的文件.

关于元素的背景图片background-image样式?

  • 背景图片的重复/平铺, background-repeate: 有四个值: repeat, no-repeat, repeat-x, repeat-y.
  • 背景图片的位置: background-position: 关键是要知道 这个位置是指(两个点的偏移offset): 背景图片的左上角 相对于当前元素的box模型的左上角的 偏移offset位置, 几种指定方法: 一是使用关键字: left/center/right, top/center/bottom, 二是使用 具体数字 如10px 20px等 并且 关键字和 数字的表示方法能够混用.
  • 背景图片的固定? background-attachment: scroll, fixed....

  • 若是要使用 元素样式的 集中写法, 必须写这个元素的 "集中属性", 而不能使用它的 分属性, 好比: background: url('...') 0px 5px scroll no-repeat, 可是不能写成: background-image: url('...') repeat-x 也就是说 集中属性的写法 和 分属性的写法不能混合着写:

  • 背景图片属性的说明顺序是: cipar: color-image-position-attach-repeat.

伪类/伪元素:before 和 :after 的以前和以后是什么?
直觉是:before 伪元素是 插入的内容 会被注入到目标元素的 前面或后面. 可是实际上不是这样的: 伪类注入的内容将是 有关联的那个目标元素的子元素, 可是它会被置于这个元素的任何 子内容的"前"或"后"


div自己没有语义上的含义, 要尽可能使用具备 语义的标签和类, 好比header, footer,nav, article等标签

bs中的article标签标识一篇文章, 一个帖子, 一般包含 header, (h2 p) +内容. article也能够放在页面的尾部

section是article中 用来分隔另外一个区块的内容

hgroup: 当有多个具备 层级关系 的标题(好比一级标题h1, 二级标题h2, 三级标题h3 或者一个主标题一个子标题)的 时候, 就应该使用hgroup

来包含.
hgroup的css样式很简单, 他就是一个 display: block的块

  • One's whole mind is concentrated on one thing only.
  • I take only what i want, I don't care about anything else.

彻底用h5 来写页面, 要有完整的结构, 随时随 处 都能说出标签明确的语义

h5的代码在 ie9如下都是没有效果的, 调试h5 仍是要在ff和 chrome下比较好.

!important原本是css的标准语法, 表示优先执行, 可是ie6不能认,因此就用两条语句来解决兼容性的问题,好比
.foo{padding-left: 30px !important; padding-left: 20px; } 那么就能实现 在ie6下左边距 20px, 而ff下左边距30px

以 .table- 开头的类, 都是用在table标签上的, 非-table开头的只能应用在tr 或td上
table中 若是使用 thead 或者 tbody 来从语义上分隔,那么在 表头和表体之间会出现一条 比较粗的 实线来分割.
凡是 以 -responsive 结尾的类都是 响应式的.

做为一个统一的样式和 主题来讲,

  • 比较经典的边框的灰色是 #ddd
  • .table-hover类 和 当项目被激活时的 .active类的背景颜色是 #f5f5f5的浅灰色.

html自己也是一个标签元素, 你能够在ff中看到它的box model

bs的container 是如何肯定宽度的?

  • 虽然在 .container的样式中, 只是规定了left-right/padding-margin, 并无规定宽度, 可是 div.container的容器并无占据100%的屏幕宽度,而是只占了中间的一部分宽度(好比1600px的宽屏实际上只占据了 居中的170px)
  • 是由于 .container被定义了 媒体查询, 实现了响应式布局

响应式布局? 又叫媒体查询

  • 能够根据 媒体类型 来定义不一样的样式, 即对于 不一样的屏幕宽度(不是显示器的宽度), 应用不一样的样式
  • 完整的格式是: @media mediatype [and|not|only] (media feature) { 具体的标签/类/id的样式{ ...} } 而不少时候, 可使用简写的媒体查询, 省略 metiatype 和逻辑词, 直接就是 : @media (media feature) { ....}
  • mediatype是媒体类型, 不少都已经废弃了, 主要的有all, print,screen, speech. and|not|only是 逻辑关系, 表示媒体类型和媒体特征同时知足条件等, media feature标识媒体特征或 媒体功能,包括不少, 好比 width, height, min/max-width, min/max-height等等. 能够有多个媒体特征(条件), 用and 来链接: 好比:
/* 手机等小屏幕手持设备, 下面有两个and  */  
@media screen and (min-width: 320px) and (max-width: 480px) {   仍是 (min-height: 480px)????
body {
background: yellow;
}
}
  • 因此 @media screen and (min-width: 1200px) { .container{ width: 1170px;} } 简写成 : @media (min-width: 1200px) { .container { width: 1170px; } } 就标识 浏览器最小宽度是1200px的时候, 即: 浏览器宽度大于1200px的时候, 使用 里面的样式.

  • 注意两个问题: 可能有一种错觉: 觉得媒体查询中的宽度, 指的就是你显示器的宽度, 因此觉得宽屏的显示器的.container的宽度老是固定的那么多1170px. 实际上这是错误的, 这里的"屏幕宽度" 指的是 : 浏览器的"屏幕"宽度! 因此, 即便是在 宽屏的显示屏中, 当你不断调整\缩小浏览器的宽度时, 你能够看到 container的宽度是 在不断改变的.

  • 有三个媒体屏幕宽度的等级, .container的宽度略小于 宽度等级:min-width: 768px 对应的是 750px; min-width: 992px 对应的是 970px; min-width: 1200px 对应的是 1170px; min-width的媒体特征后面是冒号, 不是等号.

  • 实际上ff浏览器 在调试宽屏的显示效果的同时, 还支持 手机等 窄屏的设备的 responsive design mode. 能够直接在ff中 看到并调试手机上的显示效果,就不须要安装什么手机模拟器了.


bs中要表示代码, 使用 code pre标签, 其中的尖括号要用实体 转义
代码要实现滚动, 使用 pre.pre-scrollable 类

shell中命令的优先级 : 别名 > 函数 > 命令

类lead, text-center text-muted等都是用在段落 p标签上的
文本是否自动换行 text-justfied text-nowrap

h5中的缩写标签是 <abbr> 其样式是在文本底部的一条虚线边框, 当鼠标悬停在上面时, 会显示完整的文本(文本就是abbr的 title属性的内容).
为了得到一个更小字体的文本, 须要添加 .initialism类到abbr

address标签显示 联系地址, 内部用br换行,
blockquote引用的格式 是在旁边画一条竖线,
.pull-right 类 是显示在右边
cite标签, 在html4和h5 中是不一样的语义, h5中表示的是 做品的题目, 好比书名
列表的类型有 ol, ul, dl. dl是自定义列表项, 它跟ol, ul不一样的是, 不仅是包含列表项, 并且还包含列表项的说明内容. 使用 .dl-horizontal类

能够获得水平的列表项.

关于script的位置, 一般来讲, 是放在head中的, 可是, 推荐仍是 放在body的最后, 不少大站都是这些写的

应该养成严谨的习惯, html中全部的内容 都应该放在 标签中

之前的h4标准中, 自闭合标签br hr input的尾部都要加斜杠, 说是为了严谨. 可是 如今变了, 在h5中, 推荐在 自闭合标签br hr input的尾部都不

加结尾的斜杠了! 由于h5会认为是错误的标签,而后就会在父元素的结尾处去寻找结束标签, 但这样显然是不合理的.

url结尾是否要加斜杠?

  • 首先要搞清楚, 加斜杠的目的是什么? 斜杠是标识的是目录!
  • 所以, 若是你是访问的一个文件, 就不能加结尾的斜杠
  • 反之, 若是是访问的一个目录, 就最好是加上. 由于若是不加斜杠, 浏览器默认的把当前请求 会看成一个普通的文件去访问, 当觉察到不对(即在

那个位置找不到这个文件的时候), 会作一个301的重定向, 自动在访问地址后面加上斜杠做为目录访问, 这时候就是第二次请求了, 这样的话, 在某

些语言中编程就会出错. 好比 在 request.getParameter代码就会获取不到请求参数, 由于request.getParameter的生命期只有一次, 只有在第一

次请求中有效, 在重定向后的第二次请求中就无效了.

在版本修改过程当中的version和revision的区别?

  • version是软件在开发过程当中比较成熟的一个版本;
  • revision [ri'vi32n], 修订版, 一般是在软件的开发过程当中的一些修订, 在同一个version版本中, 能够有多个修订版revision.

在同一个栅格系统的列div中, 能够同时指定多个不一样宽度的列宽类, 好比: div.container > div.row > div.col-sm-6 .col-md-4.col-lg-3

bs的列是有顺序的, 默认的是按书写的前后次序排列的, 若是要调整 列的左右前后顺序, 可使用 类.col-md-push-?? (向右推移动) 或 .col-md-

pull-?? (向左拉移动)

有col-xs, sm, md, lg四个等级的屏幕尺寸, 这些尺寸不是任意的, 在你写 col-md-??的时候, 就基本上固定了

小于 768px 的时候,用 col-xs-12 类对应的样式;
在 768px 到 992px 之间的时候,用 col-sm-9 类对应的样式;
在 992px 到 1200px 之间的时候,用 col-md-6 类对应的样式;
大于 1200px 的时候,用 col-lg-3 类对应的样式

glyph 的英文意思: '象形文字, 象形符号', 而glyphr 就是 linux下 设计字体的软件, 因此 glyphicons就是象形图标了.

由less 到 css的过程也叫 编译, 至关于 c++ java等源文件 obj文件 到 exe文件的编译过程.

关于bs中的图片 类?

  • 整个的图片标签 是垂直方向上居中的 img { vertical-align: middle; }

  • 而响应式图片 .img-responsive 和 轮播器中的图片 都是: display: block; max-width: 100%; height: auto; /* 这样的css就是 宽度和高度 自动适应 */}

  • 对于 响应式图片, 要实现水平居中, 必须 在 img标签的自己 上, 再添加 center-block 类. 不能在 img的父元素, 好比p或div上加类.

bs栅格类型的边框线?

  • 栅格系统, 默认的是没有边框线的, 要设置边框线, 必须但对添加另外的类样式, 好比下面的 .show-grid
  • css 的选择器和 jquery中的用法 彻底一致, 一样支持 属性选择符, 和 ^= 等运算符的.
<style type="text/css">
        .show-grid [class ^="col-"] {
            padding-top: 10px;
            padding-bottom: 10px;
            background-color: #eee;
            border: 1px solid #ddd;
            background-color: rgba(86, 61, 124, .15);
            border: 1px solid rgba(86, 61, 124, .2);
        }
        </style>

bs的类样式 .img-responsive的意思到底是什么意思?

: 就是使得 img图片的宽高 可以自动缩放, 自动适应父容器的缩放比例的, 由于它的css样式就是 .img-responsive{ max-width: 100%; heigth: auto; }
: 可是还得要求, img的父容器 是自动适应的, 要求父容器的宽度是百分比的 好比 div{width: 50%} > img.img-responsive

另外, col-SCREEN_TYPE-???后面的数字怎样写?

  • 首先要明确, 屏幕越宽, col 最后的数字应越小 好比同一个 图片对象的 对应 列宽类样式: col-xs-12 col-sm-6 col-md-3 col-lg-1
  • 是由于, 假设针对 一样宽度的一个 对象, 屏幕越宽, 一个列的"单位宽度"越大, 放置这样的对象 所需的列的数量就越少; 因此 col-md-3的宽度 可能就只须要1个 lg的宽度了: col-lg-1

什么是301 重定向?

  • 是请求返还的header 信息状态之一, 404 是没有, 500+ 表示的是 服务器(内部)错误, 即内部程序错误
  • 301是 永久性重定向 302 是临时性重定向
  • 301重定向 会 传递大多数的权重, 完成权重的传递通常须要1到几个月
  • 301重定向 主要用在几个场合: 网站内容/目录结构改版; 网站域名改变; 企业申请的多个域名 要指向同一个 主域名时(不然会认为内容重复而被 搜索引擎处罚)
  • 301重定向的实现方式有: html重定向 <meta http-equiv="refresh" content="0; url=/newpage.html" // content里面的0表示刷新跳转时间间隔, 0标识立刻/当即/直接跳转... , 其余脚本语言重定向, 好比 php语言重定向(基本上就是 .htaccess地址重写的那个步骤)

分辨率越大, 是说的数值 越大, 在相同的屏幕尺寸, 分辨率越大, 则像素点越多, 更清晰. 一个像素点是指能单独显示颜色的最小单位

1个css像素 不必定等于 1个屏幕 物理像素, css像素是一个 相对值: 跟屏幕像素密度 正相关, 跟用户缩放正相关(当用户屏幕页面放大一倍, 则一个css像素 表明的物理像素 将增长1倍)

bs须要在h5中才能使用, bs3的设计intent是移动设备优先, 因此要声明 viewport的meta: <meta name="viewport" conent="width=device-width, initial-scale=1.0 [maximum-scale=... , minimum-scale=..., user-scalable=no 用户是否能够缩放]"> 注意, viewport的内容值之间用 逗号而不是用分号分隔.

css中的 @charset utf8; 中间不能用冒号或等号, 最后还必须用分号; 不然这条声明无效, 至关于没有声明同样, 并且在编辑器中还会高亮错误. 仍是会按 英文字符集来显示.

<ele class="c1 c2"> 的类表示同时具备两个样式, 能够有两种生效方式: 一种是分别定义两个类.c1{...} .c2{...}, 效果是它们的综合相加; 另外一种是同时定义两个 类样式 中间没有空格 .c1.c2{...} 这二者方式中, 若是有样式重复的, 后者样式会覆盖前面的那种定义的样式. 可是 .c1 .c2{...} 中间有空格的形式是不能对这个元素生效的

修改bs 的默认样式, 若是要全局修改, 能够直接修改, 覆盖, 好比 .container样式, 可是若是只是覆盖某一个的话, 能够在这个类前面加上一个任意的 类样式好比.foo; 而后用复合类的方式来定义覆盖. 好比: .foo.container{...}

对于网站的资源, 能够用相对路径,也能够用绝对路径. 若是用绝对资源, 根路径就是 "/" 网站的根路径就是指网站的 根目录, 即wamp的www, 或apache的根目录html.

select的默认选项值是提示, 是占位符, 因此它的value值就等于空 <select><option value="">请选择</option>

写html的时候, 若是是你本身写css的话, 就是 先要写好布局和 站位的内容, 而后再写css和js.
可是, 若是是用前端框架, 那么在写内容的时候, 就想好用什么组件和框架布局了, 一块儿写的

完整的表格结构是: table=thead(tr>th) + tbody(tr>td) 要注意, thead和tbody还有语义上的 含义和区别, 在thead和tbody之间 会有一条加粗的分隔线. 不然若是没有thead, 那么表头和表体之间 就不会有明显的区别和分隔线.

在vim中 冒号命令的 范围起止,不是用冒号, 而是用的 逗号, 好比: 10,20d 另外, 在一些normal命令中, 要善于使用 数词, 好比: dw, cw, d3w c2w等.

在tp中, 实例化对象 传入初始化参数的时候, 可使用二者方式, 一种是 传统的构造函数参数(初始化函数参数, 即c/c++ 传统语言的方式), 另外一种是 使用 "动态参数", 这个是php的特殊方式, 并且要定义 魔术方法 __set(...) 要习惯于第一种方式, 由于第一种方式的效率好像要更高一点.


tp中的多级控制器就是在 controller目录下又多了一个子目录, 用来分组存放控制器而已. 默认的是把全部的具体控制器子类 所有都放在 controller目录下, 分级后则按目录存放.
要使用多级控制器,首先要设置 'CONTROLLER_LEVEL' => 2 而后在子目录下建立控制器文件 Controller\User\UserTypeController.class.php , 而后, 相应的,控制器类的命名空间定义就是 namespace Home\Controller\User;
其实, 开发中,通常可以用默认的设置就尽可能用默认的设置, 谁也不会故意搞得那么复制, 把本身入坑本身整本身. 因此像多级控制器基本没有什么用.

action和operation的区别
operation强调普通的操做步骤, action是更普遍的含义, military action. mvc中固定的用法是 action.

在tp中, 要定义操做方法,你能够定义不带参数的操做方法(大多数是这样的), 也能够定义带 参数的操做方法, 可是操做方法的参数来源, 传参是一个大问题, 由于你在url访问中, 不可能在url的action中用括号来传参的方式.

  • action中的参数 能够来源于从 前台表单中 传递过来的 $_POST $_GET, I()方法等;
  • 若是没有前台表单传递参数, action方法中又定义了参数, 那么这个参数也能够从 另外一个页面中的 a锚点连接- url地址中传参 来得到. 这个就叫作action参数绑定, 即: action中的参数和url中的参数 名称相对应 而得到.
  • 默认的就是action参数绑定开启的, 定义 'URL_PARAMS_BIND' => true, 类型有二者,一种是按名称绑定,默认的, 那么要求名称必定要相同的对应, 顺序不要求; 另外一种是 按顺序绑定, 设置是: 'URL_PARAMS_BIND_TYPE' => 1 (0是按名称绑定)
  • 应该/始终给操做方法参数设置 默认值, 是防止出错的好方法. 不然, 若是没有在url中设置对应绑定的参数/参数值, 就会报错 "参数错误..."

关于字符串拼接?

  • 在php文件中,一种很简单的字符串和变量的拼接方法, 只要在原来的 单引号/双引号的中间, 加上一对单引号和变量就行了, 即: '.$id.'
  • 在js中字符串拼接, 使用 加号+
  • 而在html中, 要拼接字符串就更容易了, 由于根本就不须要 拼接 , 直接将内容挨着写就是了, 好比: <a href="http://localhost/Home/Index/boot/id/{$id}">click here to jump </a>

js跳转的几种方式
location.href=.... self.location=..// top.location=.... history.back(); histroy.forward().
可是没有 window.navigate(...), 和 history.go(-1)等的写法无效.


默认状况下, url地址中的模块不能省略, 若是要简化某个模块的url访问地址, 能够经过设置模块列表和默认模块等.
// 容许访问的模块列表
'MODULE_ALLOW_LIST' => array('Home', 'Admin', 'User'),
'DEFAULT_MODULE' => 'Home',
// 还能够配置禁止访问的模块
默认的Application下的Common模块和Runtime模块是禁止访问的
'MODULE_DENY_LIST' => array('Common', 'Runtime', 'User'),
// 模块映射是为了包含"后台"模块, 禁止用户直接访问某个模块
'URL_MODULE_MAP' => array('test' => 'admin'),
设置了模块映射后, 原来的admin模块将不能访问, 只能访问test模块

若是发生在本地测试正常, 可是一旦部署到服务器环境后就只能访问首页 的状况, 颇有多是 你的服务器或者空间不支持 PATH_INFO这种url模式所致.

 经过url重写隐藏应用的入口文件index.php的配置内容

  • 首先要确认在apache的配置文件httpd.conf文件中, 加载(开启) mod_rewrite.so模块
  • 修改apache配置文件中的 AllowOverride None 为All
  • 最后将.htaccess文件放到 和 应用入口文件index.php相同的目录下. 具体内容已有.

关于tp中的目录?

目录 分为应用/项目的 公共目录和模块目录. 凡是属于模块好比Home模块的东西, 就应该放在模块的对应子目录下, 好比Home模块下 的 Lib目录, Behavior目录, TagLib目录等. 在公共目录下也能够有这些子目录, 只是这些子目录是服务于 全部的 模块的.

杂项??

  1. tp的 "行为Behavior", 可让你无需改动框架和应用, 而在外围经过扩展 或者 配置来改变或增长一些功能.

  2. 在实际项目开发中, 不是为了验证/实验时, 通常不会故意把项目搞得很复杂, 不会本身整本身, 都会使用 "通用的/常见的/成熟的"方案和技术, 而不会采用激进的技术. 因此不少熟练的人都几乎是 背着写/凭记忆直接就写出 成套的代码了.
    类库通常有 公共类库和应用类库, 公共类库主要是放在 框架的 Library\Think\类库中的.
    应用类库(即类文件, 好比 CertainApp.class.php文件)通常 都不直接放在根目录下 \html 下, 而是要放在 根下的 相关分类目录中
    除非特别须要, tp项目的配置都应该保持默认.

  3. html中像 <br> <br />等叫作 void elements "无内容标签, 空标签".
    在html5中, void tag的 最后的那个 斜杠/ 叫作 "关闭斜杠" 这个关闭斜杠是 "可选"的. 事实上, h5认为最后的这个 关闭斜杠是一个 "错误", 由于标签原本就没有什么内容, 你还要什么关闭斜杠呢? 只是这个 关闭斜杠 是一个 "能够容忍"的错误. 所以, h5提倡 不要写最后 的那个斜杠. 直接写成 <br> <hr> <img src=".." alt="..."> 就行了

所以, 像<p>...</p> <div>...</div> 这些 有 开始 ~ 结束标签, 有 </tag> 的都叫 闭合标签closed tag. 而全部的 空元素/无内容标签 都是 非闭合的.
在Tp框架\Library\Template\TagLib\Html.class.php中,
// 标签订义: attr 属性列表 close 是否闭合(0 或者1, 默认1 即默认是非闭合的) alias 标签别名 level 嵌套层次

相关文章
相关标签/搜索