里的元素的height:100%)(这会限制你页面设计的自由性。)
一旦学了CSS知识,你会发现使用table做页面布局会变得更麻烦。(先花时间学一些CSS知识,会省去你以后大量的时间。)
table对对于页面布局来说,从语义上看是不正确的。(它描述的是表现,而不是内容。)
table代码会让阅读者抓狂。(不但无法利用CSS,而且会你不知所云)
table一旦设计完成就变成死的,很难通过CSS让它展现新的面貌。
Tables的优点
在某些场合,使用Table是100%的适合、恰当和正确。比如,用table做表格是完全正确的。
虽然不推荐,但是还是使用table做个布局看看~ 示例:
传统布局
传统布局是基于盒状模型,依赖 display 属性 + position属性 + float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。
float知识点可参考《CSS浮动与清除》一节。float布局是布局中常见的一种方式,但是需要注意高度塌陷的问题。
示例:
flex布局
参考地址:
http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html https://www.runoob.com/w3cnote/flex-grammar.html https://developer.mozilla.org/zh-CN/docs/Web/CSS/CSS_Flexible_Box_Layout/Basic_Concepts_of_Flexbox
2009年,W3C提出了一种新的方案—-Flex布局,可以简便、完整、响应式地实现各种页面布局。目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能。
flex布局是什么
Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。 任何一个容器都可以指定为 Flex 布局:
.box{
display: flex;
}
行内元素也可以使用 Flex 布局:
.box{
display: inline-flex;
}
Webkit 内核的浏览器,必须加上-webkit前缀:
.box{
display: -webkit-flex; /* Safari */
display: flex;
}
注意,设为 Flex 布局以后,子元素的float、clear和vertical-align属性将失效。
基本概念
采用 Flex 布局的元素,称为 Flex 容器(flex container),简称"容器"。它的所有子元素自动成为容器成员,称为 Flex 项目(flex item),简称"项目"。
容器默认存在两根轴:水平的主轴(main axis)和垂直的交叉轴(cross axis)。主轴的开始位置(与边框的交叉点)叫做main start,结束位置叫做main end;交叉轴的开始位置叫做cross start,结束位置叫做cross end。 项目默认沿主轴排列。单个项目占据的主轴空间叫做main size,占据的交叉轴空间叫做cross size。
flex属性
flex-direction:属性决定主轴的方向(即项目的排列方向)
row(默认值):主轴为水平方向,起点在左端。
row-reverse:主轴为水平方向,起点在右端。
column:主轴为垂直方向,起点在上沿。
column-reverse:主轴为垂直方向,起点在下沿。
示例:
flex-wrap
默认情况下,项目都排在一条线(又称"轴线")上。flex-wrap属性定义,如果一条轴线排不下,如何换行。
nowrap(默认):不换行。
wrap:换行,第一行在上方。
wrap-reverse:换行,第一行在下方。
示例:
flex-flow
属性是flex-direction属性和flex-wrap属性的简写形式,默认值为row nowrap
||
justify-content: 定义了项目在主轴上的对齐方式。
flex-start(默认值):左对齐
flex-end:右对齐
center: 居中
space-between:两端对齐,项目之间的间隔都相等。
space-around:每个项目两侧的间隔相等。所以,项目之间的间隔比项目与边框的间隔大一倍。
示例:
align-items
定义项目在交叉轴上如何对齐。
flex-start:交叉轴的起点对齐。
flex-end:交叉轴的终点对齐。
center:交叉轴的中点对齐。
baseline: 项目的第一行文字的基线对齐。
stretch(默认值):如果项目未设置高度或设为auto,将占满整个容器的高度。
示例:
align-content
定义了多根轴线的对齐方式。如果项目只有一根轴线,该属性不起作用。
flex-start:与交叉轴的起点对齐。
flex-end:与交叉轴的终点对齐。
center:与交叉轴的中点对齐。
space-between:与交叉轴两端对齐,轴线之间的间隔平均分布。
space-around:每根轴线两侧的间隔都相等。所以,轴线之间的间隔比轴线与边框的间隔大一倍。
stretch(默认值):轴线占满整个交叉轴。
示例:
item1
item2
item3
item3
item3
item3
item3
item3
item3
item3
item3
item1
item2
item3
item3
item3
item3
item3
item3
item3
item3
item3
item1
item2
item3
item3
item3
item3
item3
item3
item3
item3
item3
item1
item2
item3
item3
item3
item3
item3
item3
item3
item3
item3
item1
item2
item3
item3
item3
item3
item3
item3
item3
item3
item3
项目属性
order
定义项目的排列顺序。数值越小,排列越靠前,默认为0。
flex-grow
定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大。
flex-shrink
定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小。
flex-basis
定义了在分配多余空间之前,项目占据的主轴空间(main size)。浏览器根据这个属性,计算主轴是否有多余空间。它的默认值为auto,即项目的本来大小。
| auto
; /* default auto */
flex
flex是flex-grow, flex-shrink 和 flex-basis的简写,默认值为0 1 auto。后两个属性可选。
none | [ <'flex-grow'> <'flex-shrink'>? || <'flex-basis'> ]
align-self
允许单个项目有与其他项目不一样的对齐方式,可覆盖align-items属性。默认值为auto,表示继承父元素的align-items属性,如果没有父元素,则等同于stretch。
auto | flex-start | flex-end | center | baseline | stretch;
Grid布局
参考网址: https://developer.mozilla.org/zh-CN/docs/Web/CSS/CSS_Grid_Layout http://www.ruanyifeng.com/blog/2019/03/grid-layout-tutorial.html https://www.html.cn/archives/8510 https://www.w3cschool.cn/lugfe/lugfe-ckg225zp.html https://www.jianshu.com/p/d183265a8dad
有了flex布局,为什么还需要grid布局呢?
Grid 布局与 Flex 布局有一定的相似性,都可以指定容器内部多个项目的位置。但是,它们也存在重大区别。 Flex 布局是轴线布局,只能指定"项目"针对轴线的位置,可以看作是一维布局。Grid 布局则是将容器划分成"行"和"列",产生单元格,然后指定"项目所在"的单元格,可以看作是二维布局。
概述
它将网页划分成一个个网格,可以任意组合不同的网格,做出各种各样的布局。以前,只能通过复杂的 CSS 框架达到的效果,现在浏览器内置了。
基本概念
容器和项目 采用网格布局的区域,称为"容器"(container)。容器内部采用网格定位的子元素,称为"项目"(item)。
行和列 容器里面的水平区域称为"行"(row),垂直区域称为"列"(column)。
单元格 行和列的交叉区域,称为"单元格"(cell)。 正常情况下,n行和m列会产生n x m个单元格。比如,3行3列会产生9个单元格。
网格线 划分网格的线,称为"网格线"(grid line)。水平网格线划分出行,垂直网格线划分出列。 正常情况下,n行有n + 1根水平网格线,m列有m + 1根垂直网格线,比如三行就有四根水平网格线。
容器属性
display
display: grid | inline-grid; 注意,设为网格布局以后,容器子元素(项目)的float、display: inline-block、display: table-cell、vertical-align和column-*等设置都将失效。
grid-template-columns,grid-template-rows
容器指定了网格布局以后,接着就要划分行和列。grid-template-columns属性定义每一列的列宽,grid-template-rows属性定义每一行的行高。
.container {
display: grid;
grid-template-columns: 100px 100px 100px;
grid-template-rows: 100px 100px 100px;
}
除了使用绝对单位,也可以使用百分比。
repeat() 有时候,重复写同样的值非常麻烦,尤其网格很多时。这时,可以使用repeat()函数,简化重复的值。上面的代码用repeat()改写如下。
.container {
display: grid;
grid-template-columns: repeat(3, 33.33%);
grid-template-rows: repeat(3, 33.33%);
}
repeat()接受两个参数,第一个参数是重复的次数(上例是3),第二个参数是所要重复的值。 repeat()重复某种模式也是可以的。
auto-fill 关键字 有时,单元格的大小是固定的,但是容器的大小不确定。如果希望每一行(或每一列)容纳尽可能多的单元格,这时可以使用auto-fill关键字表示自动填充。
.container {
display: grid;
grid-template-columns: repeat(auto-fill, 100px);
}
fr 关键字 为了方便表示比例关系,网格布局提供了fr关键字(fraction 的缩写,意为"片段")。如果两列的宽度分别为1fr和2fr,就表示后者是前者的两倍。
.container {
display: grid;
grid-template-columns: 1fr 1fr;
}
minmax() minmax()函数产生一个长度范围,表示长度就在这个范围之中。它接受两个参数,分别为最小值和最大值。
grid-template-columns: 1fr 1fr minmax(100px, 1fr);
auto 关键字 auto关键字表示由浏览器自己决定长度。
grid-template-columns: 100px auto 100px;
上面代码中,第二列的宽度,基本上等于该列单元格的最大宽度,除非单元格内容设置了min-width,且这个值大于最大宽度。
网格线的名称 grid-template-columns属性和grid-template-rows属性里面,还可以使用方括号,指定每一根网格线的名字,方便以后的引用。
.container {
display: grid;
grid-template-columns: [c1] 100px [c2] 100px [c3] auto [c4];
grid-template-rows: [r1] 100px [r2] 100px [r3] auto [r4];
}
布局实例 grid-template-columns属性对于网页布局非常有用。两栏式布局只需要一行代码。
.wrapper {
display: grid;
grid-template-columns: 70% 30%;
}
传统的十二网格布局,写起来也很容易。
grid-template-columns: repeat(12, 1fr);
示例
grid-row-gap 属性,grid-column-gap 属性,grid-gap 属性 grid-row-gap属性设置行与行的间隔(行间距),grid-column-gap属性设置列与列的间隔(列间距)。
.container {
grid-row-gap: 20px;
grid-column-gap: 20px;
}
grid-gap属性是grid-column-gap和grid-row-gap的合并简写形式,语法如下。
grid-gap: ;
grid-template-areas 属性 网格布局允许指定"区域"(area),一个区域由单个或多个单元格组成。grid-template-areas属性用于定义区域。
.container {
display: grid;
grid-template-columns: 100px 100px 100px;
grid-template-rows: 100px 100px 100px;
grid-template-areas: 'a b c'
'd e f'
'g h i';
}
如果某些区域不需要利用,则使用"点"(.)表示。
grid-template-areas: 'a . c'
'd . f'
'g . i';
grid-auto-flow 属性 划分网格以后,容器的子元素会按照顺序,自动放置在每一个网格。默认的放置顺序是"先行后列",即先填满第一行,再开始放入第二行。 grid-auto-flow属性除了设置成row和column,还可以设成row dense和column dense。这两个值主要用于,某些项目指定位置以后,剩下的项目怎么自动放置。
justify-items 属性,align-items 属性,place-items 属性 justify-items属性设置单元格内容的水平位置(左中右),align-items属性设置单元格内容的垂直位置(上中下)。
.container {
justify-items: start | end | center | stretch;
align-items: start | end | center | stretch;
}
place-items属性是align-items属性和justify-items属性的合并简写形式。
place-items: ;
justify-content 属性,align-content 属性,place-content 属性 justify-content属性是整个内容区域在容器里面的水平位置(左中右),align-content属性是整个内容区域的垂直位置(上中下)。
.container {
justify-content: start | end | center | stretch | space-around | space-between | space-evenly;
align-content: start | end | center | stretch | space-around | space-between | space-evenly;
}
place-content属性是align-content属性和justify-content属性的合并简写形式。
place-content:
grid-auto-columns 属性,grid-auto-rows 属性 有时候,一些项目的指定位置,在现有网格的外部。比如网格只有3列,但是某一个项目指定在第5行。这时,浏览器会自动生成多余的网格,以便放置项目。 grid-auto-columns属性和grid-auto-rows属性用来设置,浏览器自动创建的多余网格的列宽和行高。它们的写法与grid-template-columns和grid-template-rows完全相同。如果不指定这两个属性,浏览器完全根据单元格内容的大小,决定新增网格的列宽和行高。
.container {
display: grid;
grid-template-columns: 100px 100px 100px;
grid-template-rows: 100px 100px 100px;
grid-auto-rows: 50px;
}
grid-template 属性,grid 属性 grid-template属性是grid-template-columns、grid-template-rows和grid-template-areas这三个属性的合并简写形式。 grid属性是grid-template-rows、grid-template-columns、grid-template-areas、 grid-auto-rows、grid-auto-columns、grid-auto-flow这六个属性的合并简写形式。
项目属性
grid-column-start 属性,grid-column-end 属性,grid-row-start 属性,grid-row-end 属性 项目的位置是可以指定的,具体方法就是指定项目的四个边框,分别定位在哪根网格线。 grid-column-start属性:左边框所在的垂直网格线 grid-column-end属性:右边框所在的垂直网格线 grid-row-start属性:上边框所在的水平网格线 grid-row-end属性:下边框所在的水平网格线
grid-column 属性,grid-row 属性 grid-column属性是grid-column-start和grid-column-end的合并简写形式,grid-row属性是grid-row-start属性和grid-row-end的合并简写形式。
grid-area 属性 grid-area属性指定项目放在哪一个区域。 grid-area属性还可用作grid-row-start、grid-column-start、grid-row-end、grid-column-end的合并简写形式,直接指定项目的位置。
justify-self 属性,align-self 属性,place-self 属性 justify-self属性设置单元格内容的水平位置(左中右),跟justify-items属性的用法完全一致,但只作用于单个项目。 align-self属性设置单元格内容的垂直位置(上中下),跟align-items属性的用法完全一致,也是只作用于单个项目。 place-self属性是align-self属性和justify-self属性的合并简写形式。
你可能感兴趣的:(《图解CSS》布局)
C++ 泛型编程
四代目 水门
C++学习笔记 c++ 开发语言
C++泛型编程一、泛型编程基础1.核心概念实现算法与数据结构的分离基于模板技术(函数模板/类模板)本质:类型参数化,减少重复代码典型应用:STL容器、迭代器、算法2.类型本质内存布局的抽象不同类型对应不同的内存分配策略二、函数模板1.基本语法cpptemplate//或template返回类型函数名(参数列表){//函数体}2.关键特性支持隐式推导和显式指定类型可重载(包括与普通函数重载)可声明为
归纳webpack
捻tua馔...
webpack 前端
常用配置项constHtmlWebpackPlugin=require('html-webpack-plugin');//通常用于生成HTMLconstMiniCssExtractPlugin=require('mini-css-extract-plugin');//用于分离CSSconstcssMinimizerWebpackPlugin=require("css-minimizer-webpa
HTML+CSS+javascript 轮播图
Paula-柒月拾
javascript html css 前端 html5
HTML,CSS和JavaScript可以用来创建轮播图。HTML用于构建网页的结构,所以您可以使用HTML来定义轮播图的各个部分,如图像和文本。CSS用于设计网页的外观,所以您可以使用CSS来设置轮播图的布局和样式。JavaScript用于控制网页的行为,所以您可以使用JavaScript来控制轮播图的功能,如自动播放和用户交互。下面是一个简单的HTMLCSSJavaScript轮播图的例子:H
css心跳动画
—Qeyser
Html CSS css 前端 java
图标引入CSS代码.icon{animation:bpm1slinear,pulse0.75s1slinearinfinite;}@keyframespulse{from,75%,to{transform:scale(1);}25%{transform:scale(0.9);}50%{transform:scale(1.2);}}@keyframesbpm{from{transform:scale
css实现梯形tab切换
一只快乐的小青蛙
css javascript 前端
{{item.name}}consttabList=ref([{id:1,name:'认证车辆',},{id:2,name:'临时加车',},])constcheckNum=ref(1).tabs{display:flex;width:100%;gap:20px;height:40px;background-color:#f0f4f8;.tabs_item{display:flex;width:5
css实现:不固定宽高,随内容宽度自动增长的圆形
月伤59
css 前端 javascript
1.circle{display:inline-block;border-radius:50%;min-width:20px;min-height:20px;padding:5px;background:red;color:white;text-align:center;line-height:1;box-sizing:content-box;white-space:nowrap;}.circle
css 梯形tab标签页
有脾气的程序媛
css
现在越来越时尚化,tab标签页已经不像原来的那么传统格式化了,现在给大家实现一个简约美观的tab标签页比较简约的梯形tabDocument.nav{display:flex;width:300px;align-items:flex-end;}.nav.item{flex:1;height:40px;background:#eee;border-radius
vue3+vite项目打包后css样式丢失
Angus-zoe
javascript 开发语言 ecmascript
问题:原因:默认情况下启用了CSS代码分割,CSS样式会被提取到单独的CSS文件中,会导致一些样式丢失的情况。通过将cssCodeSplit设置为false,可以禁用CSS代码分割,这样CSS样式将会内联到JavaScript中,而不是被提取到单独的CSS文件中。这种方式可以解决一些样式丢失的问题,因为样式将直接包含在构建后的JavaScript文件中,而不会受到代码分割的影响。解决方法:在vit
哈儿哥网络工作室
wodrpress资源分享
独立站 前端
哈儿哥网络工作室是一家专注于外贸网站搭建与海外品牌营销、网络营销推广的专业机构。凭借多年的行业经验和技术积累,我们致力于为客户提供全面的数字化营销解决方案,帮助企业顺利出海并提升国际竞争力。主要服务内容外贸网站搭建我们提供专业的外贸网站建设服务,包括独立站搭建、商城建设及定制化设计。采用WordPress等主流平台,结合H5自适应布局和欧美设计风格,确保网站界面美观、功能强大且加载速度快。此外,我
STM32CubeIDE/MX工程文件揭秘:HAL库main.c/main.h代码架构详解(新手必看)
·周小怪°
stm32 c语言 架构 单片机 mcu
一、工程文件结构预览Project/├──Core/│├──Inc/→头文件目录││└──main.h→主配置头文件│└──Src/→源文件目录│└──main.c→主程序文件└──...→其他外设配置文件二、main.c文件全解析-架构图解1.代码头部版权信息/*USERCODEBEGINHeader*//*********************************************
大白话Webpack 配置与使用的详细步骤和插件应用
IT木昜
大白话前端高频面试题 webpack 前端 node.js
大白话Webpack配置与使用的详细步骤和插件应用啥是WebpackWebpack就像是一个超级管家,在我们开发网页的时候,会有各种各样的文件,像JavaScript文件、CSS文件、图片等等。这些文件就像是家里的各种物品,分散在不同的地方,而且有的物品还得按照特定顺序摆放、处理之后才能正常使用。Webpack这个管家就负责把这些分散的文件收集起来,按照我们的要求进行打包、处理,最后变成一个或几个
CSS 设置宽高的单位概览
夫琅禾费米线
css 前端 javascript
CSS设置宽高的单位概览在CSS中,设置宽度和高度的单位有多种,每种单位都有特定的用途和适用场景。下面是常见的单位整理及使用示例。单位类型代表性单位使用场景视口单位vw,vh响应式布局,全屏背景百分比单位%相对父元素的宽高调整绝对单位px,cm固定宽高(如图标、按钮)相对单位em,rem字体相关布局或响应式设计内容适配单位auto,fit-content内容自适应的场景(如动态长度文本框)CSS函
构建卡应用框架鸿蒙示例代码
本文原创发布在华为开发者社区。介绍本项目实现了卡应用的基本框架,包括:1、登录/首页2、二维码3、商城4、我的/设置等常见tab页的一级页面,方便同类型应用快速启动开发。构建卡类应用框架源码链接效果预览使用说明进入应用,查看卡应用中的应用框架,方便后续进行同类型应用快速启动开发。实现思路使用Navigation导航实现页面跳转,使用Tabs实现首页布局。Navigation(this.pageSt
行业首个AI课上线!粉笔战略布局加速技术商业化进程
量子位教育
继推出AI老师后,粉笔AI产品矩阵进一步扩充。粉笔宣布,将于3月17日上线基于自研垂域大模型打造的“AI刷题系统班”,为用户提供行测、申论全科目覆盖的一站式高效备考支持。粉笔介绍,AI刷题系统班以AI为主导,采用“名师+AI数字人老师”双师结合模式,资深教师直播授课,AI教师启发式教学,具备DeepSeek同款深度思考能力,由数字人老师全程伴学,提供交互式学习体验,依托AI算法实现用户全周期学习管
Android 13.0 Launcher修改density禁止布局改变功能实现
安卓兼职framework应用工程师
android 13.0 Rom定制化系列讲解 android Launcher3 density 禁止布局改变 configuration
1.前言在13.0的系统rom定制化开发中,在关于Launcher3的定制化功能中,在有些功能需要要求改变系统原有的density屏幕密度,这样就会造成Launcher3的布局变化,所以就不符合要求,接下来就来看下如何禁止改变density造成Launcher3布局功能改变的实现2.Launcher修改density禁止布局改变功能实现的核心类packages/apps/Launcher3/src
vxe-table 实现复选框多选通过鼠标拖动选择功能
vue.js
启用表格多选的范围选择功能很简单,启用后就像excel一样,可以通过鼠标滑动选择行,也可以按住ctrl键部分选择,功能非常强大,支持快捷键;
[email protected] @4.9.4//...importVxeUIfrom'vxe-pc-ui'import'vxe-pc-ui/lib/style.css'importVxeUITablefrom'vxe-tab
vxe-table v4.8+ 实现行拖动排序,列拖动排序
vue.js
VxeUIvuevxe-tablev4.8+实现行拖动排序,列拖动排序安装
[email protected] @4.8.1main.js//...importVxeUIfrom'vxe-pc-ui'import'vxe-pc-ui/lib/style.css'importVxeUITablefrom'vxe-table'import'vxe-table/lib/s
图解MOE大模型的7个核心问题并探讨DeepSeekMoE的专家机制创新
AI仙人掌
人工智能 人工智能 自然语言处理 深度学习
原文地址:https://newsletter.maartengrootendorst.com/p/a-visual-guide-to-mixture-of-experts
解决elementui中aria-hidden报错:Blocked aria-hidden on an element because its descendant retained focus.
T-shmily
vue浏览器报错 elementui 前端 javascript
控制台报错:这个无缘无故的是浏览器的原因,不影响代码但影响美观。可以通过css解决,可以放在入口文件解决办法:/*解决浏览器报错:Blockedaria-hiddenonanelementbecauseitsdescendantretainedfocus*/input[aria-hidden="true"]{display:none!important;}或者添加以下也可以解决.el-radio_
vue2中使用Animate.css动画插件
T-shmily
前端 vue.js 动画
①安装Animate官网npminstallanimate.css--saveyarnaddanimate.css或者直接下载②引入在main.js中importanimatedfrom"animate.css";Vue.use(animated)或import'animate.css';也可以直接引入在需要用动画的组件中import'animate.css'③使用vue官网vue官网Transi
css选择器第三章(伪元素/选择器优先级/三大特性)
星空寻流年
前端基础 css 前端
css伪元素/选择器优先级/三大特性一、css伪元素选择器该选择器跟之前的不同,元素选择器操作的是元素里面的内容,伪类操作的是元素本身(只能操作类似于div,p标签等等这些标签元素)。1.1概览::first-letter选中元素中的第一个文字。::first-line选中元素中的第一行文字。::selection选中被鼠标选中的内容。::placeholder选中输入框的提示文字。::befor
css伪类选择器第二章
星空寻流年
前端基础 css 前端
一、css伪类选择器选中特殊状态元素,这个状态不是我们自己手动定义的css或者id等等,是我们看不到的。一般使用格式为元素:(冒号)属性方式如何理解“伪”?—虚假的,不是真的。如何理解“伪类”?—像类(class),但不是类,是元素的一种特殊状态。1.1伪类基本概念代码示例a标签伪类基本概念/*选中的是没有访问过的a元素的颜色*/a:link{color:green;}/*访问过的a元素展示的颜色
uniapp布局
light多学一点
uni-app
记录一下表单的样式修改常见问题:使用uv-ui组件库:提交exportdefault{data(){return{fileList:[],form:{username:'',pics:[]},rules:{username:[{required:true,message:'此为必填字段',trigger:['blur','change']}],pics:{type:'array',required
3-2安卓中的目录结构以及核心四大组件应用
大丈夫在世当日食一鲲
安卓入门到吃土 android
一、目录结构1、项目根目录结构.gradle和.idea这两个目录由AndroidStudio自动生成,存放构建缓存和IDE配置信息(如窗口布局、运行配置等)。例如,.idea/runConfigurations.xml保存运行环境参数,.idea/workspace.xml记录工作空间状态。gradle/wrapper包含GradleWrapper的核心文件(如gradle-wrapper.ja
有关css设置宽度和高度与浏览器打开的显示效果不一致的问题
前端_yu小白
CSS css html html5 前端
问题描述:今天用做网页的时候,需要其他网页上的图片,用snipaste工具截取图片,并量好图片的尺寸后(假设width:600px,height:400px),用vscode编写CSS代码,引用以上测量结果设置宽度和高度,打开浏览器后发现图片是width:900px,height:600px;放大了1.5倍。原因解释:虽然浏览器的显示比例为100%,但是windows的显示设置为150%,所以你代
新手教程,小白学web前端开发—HTML5+css3
皆非本人
前端 html5 css3
小白教程,一起来跟我学简单的网页制作吧!本书教材:web前端开发案例教程—HTML5+css3简介:2005年以后,互联网进入了web2.0的时代,各种类似的桌面软件的web应用大量涌现,网站的前端,由此发生了翻天覆地的变化。网站不再只承载单一的文字和图片,各种丰富的媒体让网页的内容更加生动,网页的各种交互形式为用户带来了更好的体验,都基于前端的技术实现,好了废话不多说,让我们简单的体验一下如何制
CSS Overflow 属性详解
lsx202406
开发语言
CSSOverflow属性详解在网页设计和开发中,CSSOverflow属性是一个非常重要的特性,它决定了当内容超出其容器大小时应该如何处理。本文将详细介绍CSSOverflow属性的相关知识,包括其语法、作用、常用属性值以及一些实际应用场景。1.CSSOverflow属性概述CSSOverflow属性主要用来控制元素内容溢出的行为。当元素的内容超出了其设定的大小限制时,该属性决定了元素是显示滚动
k8s_安装metrics组件(用于实时显示各node/pod的cpu内存使用量)
^_^ 纵歌
kubernetes 容器 云原生
安装完dashboard之后,可以看到k8s所有组件,但各组件cpu内存使用量没有值,还需要安装metrics组件才行,安装完metric就可以看到各node以及pod的cpu/mem实时使用量了下面是如何安装metrics下载MetricsServer配置文件wgethttps://github.com/kubernetes-sigs/metrics-server/releases/latest
使用HTML,CSS和JavaScript创建Chrome扩展程序
海拥✘
Google 100个前端优质项目 javascript css chrome
介绍谷歌浏览器是开发人员和普通用户最喜欢的浏览器之一。我在所有设备上都使用了GoogleChrome浏览器,它可以帮助我同步书签,浏览器历史记录,密码管理器等等。对于台式机,除了可以在Internet上浏览以外,您还可以做很多事情。您可以测试您的网页和全部。通过使用扩展程序,谷歌浏览器变得更加强大。因此,今天,我们将研究如何使用HTML,CSS和JavaScript创建您的第一个GoogleChr
小白也能看得懂的基于HTML+CSS+JS实现的五子棋小游戏
Roc-xb
css javascript html
五子棋是一种起源于中国的传统棋类游戏,具有悠久的历史。基本规则棋盘:五子棋通常在一个15x15的棋盘上进行,但也可以在更大的棋盘上进行。棋盘上的每个交叉点称为一个“点”。棋子:五子棋使用黑白两色的棋子。两名玩家分别持有一种颜色的棋子。游戏目标:游戏的目标是先在棋盘上形成连续五个同色棋子的一方获胜。这些棋子可以是水平、垂直或对角线排列的。下棋规则:游戏开始时,棋盘是空的。黑方先行,然后双方轮流在棋盘
java观察者模式
3213213333332132
java 设计模式 游戏 观察者模式
观察者模式——顾名思义,就是一个对象观察另一个对象,当被观察的对象发生变化时,观察者也会跟着变化。
在日常中,我们配java环境变量时,设置一个JAVAHOME变量,这就是被观察者,使用了JAVAHOME变量的对象都是观察者,一旦JAVAHOME的路径改动,其他的也会跟着改动。
这样的例子很多,我想用小时候玩的老鹰捉小鸡游戏来简单的描绘观察者模式。
老鹰会变成观察者,母鸡和小鸡是
TFS RESTful API 模拟上传测试
ronin47
TFS RESTful API 模拟上传测试。
细节参看这里:https://github.com/alibaba/nginx-tfs/blob/master/TFS_RESTful_API.markdown
模拟POST上传一个图片:
curl --data-binary @/opt/tfs.png http
PHP常用设计模式单例, 工厂, 观察者, 责任链, 装饰, 策略,适配,桥接模式
dcj3sjt126com
设计模式 PHP
// 多态, 在JAVA中是这样用的, 其实在PHP当中可以自然消除, 因为参数是动态的, 你传什么过来都可以, 不限制类型, 直接调用类的方法
abstract class Tiger {
public abstract function climb();
}
class XTiger extends Tiger {
public function climb()
hibernate
171815164
Hibernate
main,save
Configuration conf =new Configuration().configure();
SessionFactory sf=conf.buildSessionFactory();
Session sess=sf.openSession();
Transaction tx=sess.beginTransaction();
News a=new
Ant实例分析
g21121
ant
下面是一个Ant构建文件的实例,通过这个实例我们可以很清楚的理顺构建一个项目的顺序及依赖关系,从而编写出更加合理的构建文件。
下面是build.xml的代码:
<?xml version="1
[简单]工作记录_接口返回405原因
53873039oycg
工作
最近调接口时候一直报错,错误信息是:
responseCode:405
responseMsg:Method Not Allowed
接口请求方式Post.
关于java.lang.ClassNotFoundException 和 java.lang.NoClassDefFoundError 的区别
程序员是怎么炼成的
真正完成类的加载工作是通过调用 defineClass来实现的;
而启动类的加载过程是通过调用 loadClass来实现的;
就是类加载器分为加载和定义
protected Class<?> findClass(String name) throws ClassNotFoundExcept
JDBC学习笔记-JDBC详细的操作流程
aijuans
jdbc
所有的JDBC应用程序都具有下面的基本流程: 1、加载数据库驱动并建立到数据库的连接。 2、执行SQL语句。 3、处理结果。 4、从数据库断开连接释放资源。
下面我们就来仔细看一看每一个步骤:
其实按照上面所说每个阶段都可得单独拿出来写成一个独立的类方法文件。共别的应用来调用。
1、加载数据库驱动并建立到数据库的连接:
Html代码
St
rome创建rss
antonyup_2006
tomcat cms xml struts Opera
引用
1.RSS标准
RSS标准比较混乱,主要有以下3个系列
RSS 0.9x / 2.0 : RSS技术诞生于1999年的网景公司(Netscape),其发布了一个0.9版本的规范。2001年,RSS技术标准的发展工作被Userland Software公司的戴夫 温那(Dave Winer)所接手。陆续发布了0.9x的系列版本。当W3C小组发布RSS 1.0后,Dave W
html表格和表单基础
百合不是茶
html 表格 表单 meta 锚点
第一次用html来写东西,感觉压力山大,每次看见别人发的都是比较牛逼的 再看看自己什么都还不会,
html是一种标记语言,其实很简单都是固定的格式
_----------------------------------------表格和表单
表格是html的重要组成部分,表格用在body里面的
主要用法如下;
<table>
&
ibatis如何传入完整的sql语句
bijian1013
java sql ibatis
ibatis如何传入完整的sql语句?进一步说,String str ="select * from test_table",我想把str传入ibatis中执行,是传递整条sql语句。
解决办法:
<
精通Oracle10编程SQL(14)开发动态SQL
bijian1013
oracle 数据库 plsql
/*
*开发动态SQL
*/
--使用EXECUTE IMMEDIATE处理DDL操作
CREATE OR REPLACE PROCEDURE drop_table(table_name varchar2)
is
sql_statement varchar2(100);
begin
sql_statement:='DROP TABLE '||table_name;
【Linux命令】Linux工作中常用命令
bit1129
linux命令
不断的总结工作中常用的Linux命令
1.查看端口被哪个进程占用
通过这个命令可以得到占用8085端口的进程号,然后通过ps -ef|grep 进程号得到进程的详细信息
netstat -anp | grep 8085
察看进程ID对应的进程占用的端口号
netstat -anp | grep 进程ID
&
优秀网站和文档收集
白糖_
网站
集成 Flex, Spring, Hibernate 构建应用程序
性能测试工具-JMeter
Hmtl5-IOCN网站
Oracle精简版教程网站
鸟哥的linux私房菜
Jetty中文文档
50个jquery必备代码片段
swfobject.js检测flash版本号工具
angular.extend
boyitech
AngularJS angular.extend AngularJS API
angular.extend 复制src对象中的属性去dst对象中. 支持多个src对象. 如果你不想改变一个对象,你可以把dst设为空对象{}: var object = angular.extend({}, object1, object2). 注意: angular.extend不支持递归复制. 使用方法: angular.extend(dst, src); 参数:
java-谷歌面试题-设计方便提取中数的数据结构
bylijinnan
java
网上找了一下这道题的解答,但都是提供思路,没有提供具体实现。其中使用大小堆这个思路看似简单,但实现起来要考虑很多。
以下分别用排序数组和大小堆来实现。
使用大小堆:
import java.util.Arrays;
public class MedianInHeap {
/**
* 题目:设计方便提取中数的数据结构
* 设计一个数据结构,其中包含两个函数,1.插
ajaxFileUpload 针对 ie jquery 1.7+不能使用问题修复版本
Chen.H
ajaxFileUpload ie6 ie7 ie8 ie9
jQuery.extend({
handleError: function( s, xhr, status, e ) {
// If a local callback was specified, fire it
if ( s.error ) {
s.error.call( s.context || s, xhr, status, e );
}
[机器人制造原则]机器人的电池和存储器必须可以替换
comsci
制造
机器人的身体随时随地可能被外来力量所破坏,但是如果机器人的存储器和电池可以更换,那么这个机器人的思维和记忆力就可以保存下来,即使身体受到伤害,在把存储器取下来安装到一个新的身体上之后,原有的性格和能力都可以继续维持.....
另外,如果一
Oracle Multitable INSERT 的用法
daizj
oracle
转载Oracle笔记-Multitable INSERT 的用法
http://blog.chinaunix.net/uid-8504518-id-3310531.html
一、Insert基础用法
语法:
Insert Into 表名 (字段1,字段2,字段3...)
Values (值1,
专访黑客历史学家George Dyson
datamachine
on
20世纪最具威力的两项发明——核弹和计算机出自同一时代、同一群年青人。可是,与大名鼎鼎的曼哈顿计划(第二次世界大战中美国原子弹研究计划)相 比,计算机的起源显得默默无闻。出身计算机世家的历史学家George Dyson在其新书《图灵大教堂》(Turing’s Cathedral)中讲述了阿兰·图灵、约翰·冯·诺依曼等一帮子天才小子创造计算机及预见计算机未来
小学6年级英语单词背诵第一课
dcj3sjt126com
english word
always 总是
rice 水稻,米饭
before 在...之前
live 生活,居住
usual 通常的
early 早的
begin 开始
month 月份
year 年
last 最后的
east 东方的
high 高的
far 远的
window 窗户
world 世界
than 比...更
在线IT教育和在线IT高端教育
dcj3sjt126com
教育
codecademy
http://www.codecademy.com codeschool
https://www.codeschool.com teamtreehouse
http://teamtreehouse.com lynda
http://www.lynda.com/ Coursera
https://www.coursera.
Struts2 xml校验框架所定义的校验文件
蕃薯耀
Struts2 xml校验 Struts2 xml校验框架 Struts2校验
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 2015年7月11日 15:54:59 星期六
http://fa
mac下安装rar和unrar命令
hanqunfeng
mac
1.下载:http://www.rarlab.com/download.htm 选择
RAR 5.21 for Mac OS X 2.解压下载后的文件 tar -zxvf rarosx-5.2.1.tar 3.cd rar sudo install -c -o $USER unrar /bin #输入当前用户登录密码 sudo install -c -o $USER rar
三种将list转换为map的方法
jackyrong
list
在本文中,介绍三种将list转换为map的方法:
1) 传统方法
假设有某个类如下
class Movie {
private Integer rank;
private String description;
public Movie(Integer rank, String des
年轻程序员需要学习的5大经验
lampcy
工作 PHP 程序员
在过去的7年半时间里,我带过的软件实习生超过一打,也看到过数以百计的学生和毕业生的档案。我发现很多事情他们都需要学习。或许你会说,我说的不就是某种特定的技术、算法、数学,或者其他特定形式的知识吗?没错,这的确是需要学习的,但却并不是最重要的事情。他们需要学习的最重要的东西是“自我规范”。这些规范就是:尽可能地写出最简洁的代码;如果代码后期会因为改动而变得凌乱不堪就得重构;尽量删除没用的代码,并添加
评“女孩遭野蛮引产致终身不育 60万赔偿款1分未得”医腐深入骨髓
nannan408
先来看南方网的一则报道:
再正常不过的结婚、生子,对于29岁的郑畅来说,却是一个永远也无法实现的梦想。从2010年到2015年,从24岁到29岁,一张张新旧不一的诊断书记录了她病情的同时,也清晰地记下了她人生的悲哀。
粗暴手术让人发寒
2010年7月,在酒店做服务员的郑畅发现自己怀孕了,可男朋友却联系不上。在没有和家人商量的情况下,她决定堕胎。
12月5日,
使用jQuery为input输入框绑定回车键事件 VS 为a标签绑定click事件
Everyday都不同
jsp input 回车键绑定 click enter
假设如题所示的事件为同一个,必须先把该js函数抽离出来,该函数定义了监听的处理:
function search() {
//监听函数略......
}
为input框绑定回车事件,当用户在文本框中输入搜索关键字时,按回车键,即可触发search():
//回车绑定
$(".search").keydown(fun
EXT学习记录
tntxia
ext
1. 准备
(1) 官网:http://www.sencha.com/
里面有源代码和API文档下载。
EXT的域名已经从www.extjs.com改成了www.sencha.com ,但extjs这个域名会自动转到sencha上。
(2)帮助文档:
想要查看EXT的官方文档的话,可以去这里h
mybatis3的mapper文件报Referenced file contains errors
xingguangsixian
mybatis
最近使用mybatis.3.1.0时无意中碰到一个问题:
The errors below were detected when validating the file "mybatis-3-mapper.dtd" via the file "account-mapper.xml". In most cases these errors can be d