此元素会作为内联表格来显示(类似 ),表格前后没有换行符。
table-row-group
此元素会作为一个或多个行的分组来显示(类似 )。
table-header-group
此元素会作为一个或多个行的分组来显示(类似 )。
table-footer-group
此元素会作为一个或多个行的分组来显示(类似 )。
table-row
此元素会作为一个表格行显示(类似 )。
table-column-group
此元素会作为一个或多个列的分组来显示(类似 )。
table-column
此元素会作为一个单元格列显示(类似 )
table-cell
此元素会作为一个表格单元格显示(类似 和 )
table-caption
此元素会作为一个表格标题显示(类似 )
inherit
规定应该从父元素继承 display 属性的值。
2、flex、
flex: flex-grow flex-shrink flex-basis|auto|initial|inherit;
值
描述
flex-grow
数字,规定项目相对于其余弹性项目的增长量。
flex-shrink
数字,规定项目相对于其余弹性项目的收缩量。
flex-basis
项目的长度。
合法值:“auto”、“inherit”,或单位为 “%”, “px”, “em” 的值,或任何其他长度单位。
auto
等同于 1 1 auto。
initial
等同于 0 1 auto。参阅 initial。
none
等同于 0 0 auto。
inherit
从其父元素继承该属性。参阅 inherit。
.flex-container {
display : flex;
flex-wrap : wrap;
}
.flex-item-left {
flex : 50%;
}
.flex-item-right {
flex : 50%;
}
@media ( max-width : 800px) {
.flex-item-right, .flex-item-left {
flex : 100%;
}
}
3、导航栏、
作为标准的HTML基础一个导航栏是必须的
在我们的例子中我们将建立一个标准的HTML列表导航栏。
导航条基本上是一个链接列表 ,所以使用 非常有意义:
ul {
list-style-type : none;
margin : 0;
padding : 0;
width : 200px;
background-color : #f1f1f1;
}
li a {
display : block;
color : #000;
padding : 8px 16px;
text-decoration : none;
}
li a:hover {
background-color : #555;
color : white;
}
//激活
li a.active {
background-color : #4CAF50;
color : white;
}
//创建一个左边是全屏高度的固定导航条
ul {
list-style-type : none;
margin : 0;
padding : 0;
width : 25%;
background-color : #f1f1f1;
height : 100%;
position : fixed;
overflow : auto;
}
//水平导航条
ul {
list-style-type : none;
margin : 0;
padding : 0;
overflow : hidden;
background-color : #333;
}
li {
float : left;
}
li a {
display : block;
color : white;
text-align : center;
padding : 14px 16px;
text-decoration : none;
}
li a:hover {
background-color : #111;
}
4、下拉菜单、
当鼠标移动到制定元素上时会出现下拉菜单
[mycode3]
[mycode3 type="html" ]
"dropdown">
鼠标移动到我这!
"dropdown-content">
菜鸟教程
www.runoob.com
5、表单、
input[type=text], select 选择器
//使用css来渲染html的表单元素
input[type=text], select {
width : 100%;
padding : 12px 20px;
margin : 8px 0;
display : inline-block;
border : 1px solid #ccc;
border-radius : 4px;
box-sizing : border-box;
}
input[type=submit] {
width : 100%;
background-color : #4CAF50;
color : white;
padding : 14px 20px;
margin : 8px 0;
border : none;
border-radius : 4px;
cursor : pointer;
}
input[type=submit]:hover {
background-color : #45a049;
}
div {
border-radius : 5px;
background-color : #f2f2f2;
padding : 20px;
}
//响应式表单
* {
box-sizing : border-box;
}
//select 下拉菜单 textarea文本框样式
input[type=text], select, textarea {
width : 100%;
padding : 12px;
border : 1px solid #ccc;
border-radius : 4px;
resize : vertical;
}
label {
padding : 12px 12px 12px 0;
display : inline-block;
}
input[type=submit] {
background-color : #4CAF50;
color : white;
padding : 12px 20px;
border : none;
border-radius : 4px;
cursor : pointer;
float : right;
}
input[type=submit]:hover {
background-color : #45a049;
}
.container {
border-radius : 5px;
background-color : #f2f2f2;
padding : 20px;
}
.col-25 {
float : left;
width : 25%;
margin-top : 6px;
}
.col-75 {
float : left;
width : 75%;
margin-top : 6px;
}
.row:after {
content : "" ;
display : table;
clear : both;
}
@media screen and ( max-width : 600px) {
.col-25, .col-75, input[type=submit] {
width : 100%;
margin-top : 0;
}
}
6、布局
网页布局有很多种方式,一般分为以下几个部分:头部区域header、菜单导航区域menu、内容区域content、底部区域footer 。
* 创建三个相等的列 */
.column {
float : left;
width : 33.33%;
}
.row:after {
content : "" ;
display : table;
clear : both;
}
@media screen and ( max-width : 600px) {
.column {
width : 100%;
}
}
//创建不相等的三个列
.column {
float : left;
}
.column.side {
width : 25%;
}
.column.middle {
width : 50%;
}
@media screen and ( max-width : 600px) {
.column.side, .column.middle {
width : 100%;
}
}
//响应式布局
* {
box-sizing : border-box;
}
body {
font-family : Arial;
padding : 10px;
background : #f1f1f1;
}
.header {
padding : 30px;
text-align : center;
background : white;
}
.header h1 {
font-size : 50px;
}
.topnav {
overflow : hidden;
background-color : #333;
}
.topnav a {
float : left;
display : block;
color : #f2f2f2;
text-align : center;
padding : 14px 16px;
text-decoration : none;
}
.topnav a:hover {
background-color : #ddd;
color : black;
}
.leftcolumn {
float : left;
width : 75%;
}
.rightcolumn {
float : left;
width : 25%;
background-color : #f1f1f1;
padding-left : 20px;
}
.fakeimg {
background-color : #aaa;
width : 100%;
padding : 20px;
}
.card {
background-color : white;
padding : 20px;
margin-top : 20px;
}
.row:after {
content : "" ;
display : table;
clear : both;
}
.footer {
padding : 20px;
text-align : center;
background : #ddd;
margin-top : 20px;
}
@media screen and ( max-width : 800px) {
.leftcolumn, .rightcolumn {
width : 100%;
padding : 0;
}
}
@media screen and ( max-width : 400px) {
.topnav a {
float : none;
width : 100%;
}
}
7、媒体查询与多媒体查询
//@media 规则允许在相同样式表为不同媒体设置不同的样式。
@media screen
{
p.test { font-family : verdana, sans-serif; font-size : 14px; }
}
@media print
{
p.test { font-family : times, serif; font-size : 10px; }
}
@media screen, print
{
p.test { font-weight : bold; }
}
媒体类型
描述
all
用于所有的媒体设备。
aural
用于语音和音频合成器。
braille
用于盲人用点字法触觉回馈设备。
embossed
用于分页的盲人用点字法打印机。
handheld
用于小的手持的设备。
print
用于打印机。
projection
用于方案展示,比如幻灯片。
screen
用于电脑显示器。
tty
用于使用固定密度字母栅格的媒体,比如电传打字机和终端。
tv
用于电视机类型的设备。
7.2多媒体查询
媒体查询可用于检测很多事情,例如:
viewport(视窗) 的宽度与高度
设备的宽度与高度
朝向 (智能手机横屏,竖屏) 。
分辨率
目前很多针对苹果手机,Android 手机,平板等设备都会使用到多媒体查询。
@media not |only mediatype and ( expressions) {
CSS 代码...;
}
all
用于所有多媒体类型设备
print
用于打印机
screen
用于电脑屏幕,平板,智能手机等。
speech
用于屏幕阅读器
//在屏幕可视窗口尺寸小于 600 像素时将 div 元素隐藏
@media screen and ( max-width : 600px) {
div.example {
display : none;
}
}
//在屏幕可视窗口尺寸大于 480 像素时将菜单浮动到页面左侧
@media screen and ( min-width : 480px) {
#leftsidebar { width : 200px; float : left; }
#main { margin-left : 216px; }
}
//实例 当最大宽度为。。px时 干什么
@media screen and ( max-width : 699px) and ( min-width : 520px) , ( min-width : 1151px) {
ul li a {
padding-left : 30px;
background : url ( email-icon.png) left center no-repeat;
}
}
@media screen and ( max-width : 1000px) and ( min-width : 700px) {
ul li a:before {
content : "Email: " ;
font-style : italic;
color : #666666;
}
}
@media screen and ( min-width : 1001px) {
ul li a:after {
content : " (" attr ( data-email) ")" ;
font-size : 12px;
font-style : italic;
color : #666666;
}
}
8、网格系统、
网格是一组相交的水平线和垂直线,它定义了网格的列和行。
CSS 提供了一个基于网格的布局系统,带有行和列 ,可以让我们更轻松地设计网页,而无需使用浮动和定位 。
以下是一个简单的网页布局,使用了网格布局,包含六列和三行
属性
描述
column-gap
指定列之间的间隙
gap
row-gap 和 column-gap 的简写属性
grid
grid-template-rows, grid-template-columns, grid-template-areas, grid-auto-rows, grid-auto-columns , 以及 grid-auto-flow 的简写属性
grid-area
指定网格元素的名称,或者也可以是 grid-row-start , grid-column-start , grid-row-end , 和 grid-column-end 的简写属性
grid-auto-columns
指的默认的列尺寸
grid-auto-flow
指定自动布局算法怎样运作,精确指定在网格中被自动布局的元素怎样排列。
grid-auto-rows
指的默认的行尺寸
grid-column
grid-column-start 和 grid-column-end 的简写属性
grid-column-end
指定网格元素列的结束位置
grid-column-gap
指定网格元素的间距大小
grid-column-start
指定网格元素列的开始位置
grid-gap
grid-row-gap 和 grid-column-gap 的简写属性
grid-row
grid-row-start 和 grid-row-end 的简写属性
grid-row-end
指定网格元素行的结束位置
grid-row-gap
指定网格元素的行间距
grid-row-start
指定网格元素行的开始位置
grid-template
grid-template-rows , grid-template-columns 和 grid-areas 的简写属性
grid-template-areas
指定如何显示行和列,使用命名的网格元素
grid-template-columns
指定列的大小,以及网格布局中设置列的数量
grid-template-rows
指定网格布局中行的大小
row-gap
指定两个行之间的间距
//当一个 HTML 元素将 display 属性设置为 grid 或 inline-grid 后,它就变成了一个网格容器,这个元素的所有直系子元素将成为网格元素。
//创建row列
.grid-container {
display : grid;
grid-template-rows : 100px 300px;
}
//创建行
.grid-container {
display : grid;
grid-template-columns : 100px 300px;
}
//间距
.grid-container {
display : grid;
grid-gap : 50px;
}
我们设置一个网格元素的网格线从第一列开始,第三列结束:
.item1 {
grid-column-start : 1;
grid-column-end : 3;
}
//布局四列且同距
display : grid;
grid-template-columns : auto auto auto auto;
}
//justify-content 属性用于对齐容器内的网格,设置如何分配顺着弹性容器主轴( 或者网格行轴) 的元素之间及其周围的空间。
align-content 属性
align-content 属性用于设置垂直方向上的网格元素在容器中的对齐方式
网格容器包含了一个或多个网格元素。
默认情况下,网格容器的每一列和每一行都有一个网格元素,我们也可以设置网格元素跨越多个列或行,行和列为行号。
grid-column 属性定义了网格元素列的开始和结束位置。
注意: grid-column 是 grid-column-start 和 grid-column-end 属性的简写属性。
我们可以参考行号来设置网格元素,也可以使用关键字 “span” 来定义元素将跨越的列数。
以下实例设置 “item1” 在第 1 列开始,在第 5 列前结束:
.item1 {
grid-column : 1 / 5;
}
//设置item1跨越两行
.item1 {
grid-row : 1 / span 2;
}
//
.item8 {
grid-area : 1 / 2 / 5 / 6;
}
grid-area 属性
grid-area 属性是 grid-row-start, grid-column-start, grid-row-end 以及 grid-column-end 属性的简写。
以下实例设置 "item8" 从第 1 行开始和第 2 列开始, 第 5 行和第 6 列结束。
实例
.item8 {
grid-area : 1 / 2 / 5 / 6;
}
以下实例设置 "item8" 从第 2 行开始和第 1 列开始, 横跨 2 行 3 列。
.item8 {
grid-area : 2 / 1 / span 2 / span 3;
}
grid-area 属性可以对网格元素进行命名。
命名的网格元素可以通过容器的 grid-template-areas 属性来引用。
以下实例 item1 命名为 "myArea", 并跨越五列:
.item1 {
grid-area : myArea;
}
.grid-container {
grid-template-areas : 'myArea myArea myArea myArea myArea' ;
}
每行由单引号内 ' ' 定义,以空格分隔。
. 号表示没有名称的网格项。
.item1 {
grid-area : myArea;
}
.grid-container {
grid-template-areas : 'myArea myArea . . .' ;
}
要定义两行,请在另一组单引号内 ' ' 定义第二行的列。
以下实例设置 "item1" 跨越 2 行 2 列:
实例
.item1 {
grid-area : myArea;
}
.grid-container {
grid-template-areas : 'myArea myArea . . .' ;
}
命名所有网格元素,并制作一个网页模板:
实例
.item1 { grid-area : header; }
.item2 { grid-area : menu; }
.item3 { grid-area : main; }
.item4 { grid-area : right; }
.item5 { grid-area : footer; }
.grid-container {
grid-template-areas :
'header header header header header header'
'menu main main main right right'
'menu footer footer footer footer footer' ;
}
网格元素的顺序
网格布局允许我们将网格元素放置在我们喜欢的任何地方。
HTML 代码中的第一元素不一定非要显示为网格中元素的第一项。
实例
.item1 { grid-area : 1 / 3 / 2 / 4; }
.item2 { grid-area : 2 / 3 / 3 / 4; }
.item3 { grid-area : 1 / 1 / 2 / 2; }
.item4 { grid-area : 1 / 2 / 2 / 3; }
.item5 { grid-area : 2 / 1 / 3 / 2; }
.item6 { grid-area : 2 / 2 / 3 / 3; }
您可以使用媒体查询,重新排列在指定屏幕尺寸下的顺序:
实例
@media only screen and ( max-width : 500px) {
.item1 { grid-area : 1 / span 3 / 2 / 4; }
.item2 { grid-area : 3 / 3 / 4 / 4; }
.item3 { grid-area : 2 / 1 / 3 / 2; }
.item4 { grid-area : 2 / 2 / span 2 / 3; }
.item5 { grid-area : 3 / 1 / 4 / 2; }
.item6 { grid-area : 2 / 3 / 3 / 4; }
}
8.2响应式网格视图
通常为12列,100%
接下来我们来创建一个响应式网格视图。
首先确保所有的 HTML 元素都有 box-sizing 属性且设置为 border-box 。
确保边距和边框包含在元素的宽度和高度间。
添加如下代码:
{ box-sizing : border-box; }
12 列的网格系统可以更好的控制响应式网页。
首先我们可以计算每列的百分比: 100% / 12 列 = 8.33%。
在每列中指定 class, class="col-" 用于定义每列有几个 span :
.col-1 { width : 8.33%; }
.col-2 { width : 16.66%; }
.col-3 { width : 25%; }
.col-4 { width : 33.33%; }
.col-5 { width : 41.66%; }
.col-6 { width : 50%; }
.col-7 { width : 58.33%; }
.col-8 { width : 66.66%; }
.col-9 { width : 75%; }
.col-10 { width : 83.33%; }
.col-11 { width : 91.66%; }
.col-12 { width : 100%; }
[class*="col-"] {
float : left;
padding : 15px;
border : 1px solid red;
}
//每一行使用 包裹。所有列数加起来应为 12:
//列中行为左浮动,并添加清除浮动:
.row:after
{
content : "" ;
clear : both
;
display : block
;
}
9、css属性
属性
说明
CSS
appearance
定义元素的外观样式
3
box-sizing
允许您为了适应区域以某种方式定义某些元素
3
icon
为元素指定图标
3
nav-down
指定用户按向下键时向下导航的位置
3
nav-index
指定导航(tab)顺序。
3
nav-left
指定用户按向左键时向左导航的位置
3
nav-right
指定用户按向右键时向右导航的位置
3
nav-up
指定用户按向上键时向上导航的位置a
3
outline-offset
设置轮廓框架在 border 边缘外的偏移
3
resize
定义元素是否可以改变大小
(详细全面)如下:
https://www.w3school.com.cn/cssref/index.asp
你可能感兴趣的:(前端,css,css3,html,visual,studio,前端)
移动端城市区县二级联动选择功能实现包
good2know
本文还有配套的精品资源,点击获取简介:本项目是一套为移动端设计的jQuery实现方案,用于简化用户在选择城市和区县时的流程。它包括所有必需文件:HTML、JavaScript、CSS及图片资源。通过动态更新下拉菜单选项,实现城市到区县的联动效果,支持数据异步加载。开发者可以轻松集成此功能到移动网站或应用,并可基于需求进行扩展和优化。1.jQuery移动端解决方案概述jQuery技术简介jQuery
day15|前端框架学习和算法
universe_01
前端 算法 笔记
T22括号生成先把所有情况都画出来,然后(在满足什么情况下)把不符合条件的删除。T78子集要画树状图,把思路清晰。可以用暴力法、回溯法和DFS做这个题DFS深度搜索:每个边都走完,再回溯应用:二叉树搜索,图搜索回溯算法=DFS+剪枝T200岛屿数量(非常经典BFS宽度把树状转化成队列形式,lambda匿名函数“一次性的小函数,没有名字”setup语法糖:让代码更简洁好写的语法ref创建:基本类型的
SpringMVC的执行流程
1、什么是MVCMVC是一种设计模式。MVC的原理图如下所示M-Model模型(完成业务逻辑:有javaBean构成,service+dao+entity)V-View视图(做界面的展示jsp,html……)C-Controller控制器(接收请求—>调用模型—>根据结果派发页面2、SpringMVC是什么SpringMVC是一个MVC的开源框架,SpringMVC=Struts2+Spring,
js操作样式
郝加升
DOM样式属性和方法:指定的元素,它的style有这么几个属性和方法:cssText:通过这个属性可以访问到元素的特性style设置的属性,并且可以直接赋值设置。removeProperty(属性名称):从样式中删除给定属性。setProperty(属性名称,值,权重):可以通过这个方法设置给定样式的同时设置其权重,可以传入”important”或者一个空字符串。获取计算后样式:window.ge
Selenium 特殊控件操作与 ActionChains 实践详解
小馋喵知识杂货铺
selenium 测试工具
1.下拉框单选操作(a)使用SeleniumSelect类(标准HTML标签)Selenium提供了内置的Select类用于操作标准下拉框,这种方式简单且直观。fromselenium.webdriver.support.uiimportSelect#定位下拉框dropdown=Select(driver.find_element("id","dropdown_id"))#通过以下三种方式选择单个
微信公众号回调java_处理微信公众号消息回调
weixin_39607620
微信公众号回调java
1、背景在上一节中,咱们知道如何接入微信公众号,可是以后公众号会与咱们进行交互,那么微信公众号如何通知到咱们本身的服务器呢?咱们知道咱们接入的时候提供的url是GET/mp/entry,那么公众号以后产生的事件将会以POST/mp/entry发送到咱们本身的服务器上。html2、代码实现,此处仍是使用weixin-java-mp这个框架实现一、引入weixin-java-mpcom.github.
人工智能应用研究快讯 2021-11-30
峰谷皆平
[HTML]ArtificialIntelligenceforSkinCancerDetection:ScopingReviewATakiddin,JSchneider,YYang,AAbd-Alrazaq...JournalofMedicalInternet...,2021ABSTACT:Background:Skincanceristhemostcommoncancertypeaffectin
【Jupyter】个人开发常见命令
TIM老师
# Pycharm & VSCode python Jupyter
1.查看python版本importsysprint(sys.version)2.ipynb/py文件转换jupyternbconvert--topythonmy_file.ipynbipynb转换为mdjupyternbconvert--tomdmy_file.ipynbipynb转为htmljupyternbconvert--tohtmlmy_file.ipynbipython转换为pdfju
用代码生成艺术字:设计个性化海报的秘密
本文围绕“用代码生成艺术字:设计个性化海报的秘密”展开,先概述代码生成艺术字在海报设计中的独特价值,接着介绍常用的代码工具(如HTML、CSS、JavaScript等),详细阐述从构思到实现的完整流程,包括字体样式设计、动态效果添加等,还分享了提升艺术字质感的技巧及实际案例。最后总结代码生成艺术字的优势,为设计师提供打造个性化海报的实用指南,助力提升海报设计的独特性与吸引力,符合搜索引擎SEO标准
vue element 封装表单
影子信息
vue vue.js javascript 前端
背景:在前端系统开发中,系统页面涉及到的表单组件比较多,所以进行了简单的封装。封装的包括一些Form表单组件,如下:input输入框、select下拉框、等实现效果:理论知识:表单组件官方链接:点击跳转封装组件:封装组件的思路:不封装element组件,每一个input组件绑定一个form对象,例如官网。简单封装element组件,利用for循环生成form表单的每一项el-form-item。进
前端面试每日 3+1 —— 第39天
浪子神剑
今天的面试题(2019.05.25)——第39天[html]title与h1、b与strong、i与em的区别分别是什么?[css]写出你知道的CSS水平和垂直居中的方法[js]说说你对模块化的理解[软技能]公钥加密和私钥加密是什么?《论语》,曾子曰:“吾日三省吾身”(我每天多次反省自己)。前端面试每日3+1题,以面试题来驱动学习,每天进步一点!让努力成为一种习惯,让奋斗成为一种享受!欢迎在Iss
GDP经济社会人文民生栅格数据下载网站汇总
疯狂学习GIS
本文为“GIS数据获取整理”专栏(https://blog.csdn.net/zhebushibiaoshifu/category_10857546.html)中第八篇独立博客,因此本文全部标题均由“8”开头。本文对目前主要的GDP、社会与经济数据获取网站加以整理与介绍,若需其它GIS领域数据(如遥感影像数据、气象数据、土地土壤数据、农业数据等),大家可以点击上方专栏查看,也可以看这一篇汇总文
【MySQL】MySQL数据库如何改名
武昌库里写JAVA
面试题汇总与解析 spring boot vue.js sql java 学习
MySQL建库授权语句https://www.jianshu.com/p/2237a9649ceeMySQL数据库改名的三种方法https://www.cnblogs.com/gomysql/p/3584881.htmlMySQL安全修改数据库名几种方法https://blog.csdn.net/haiross/article/details/51282417MySQL重命名数据库https://
前端数据库:IndexedDB从基础到高级使用指南
文章目录前端数据库:IndexedDB从基础到高级使用指南引言一、IndexedDB概述1.1什么是IndexedDB1.2与其他存储方案的比较二、基础使用2.1打开/创建数据库2.2基本CRUD操作添加数据读取数据更新数据删除数据三、高级特性3.1复杂查询与游标3.2事务高级用法3.3性能优化技巧四、实战案例:构建离线优先的待办事项应用4.1数据库设计4.2同步策略实现五、常见问题与解决方案5.
【Java Web实战】从零到一打造企业级网上购书网站系统 | 完整开发实录(三)
笙囧同学
java 前端 状态模式
核心功能设计用户管理系统用户管理是整个系统的基础,我设计了完整的用户生命周期管理:用户注册流程验证失败验证通过验证失败验证通过用户名已存在用户名可用失败成功用户访问注册页面填写注册信息前端表单验证显示错误提示提交到后端后端数据验证返回错误信息用户名唯一性检查提示用户名重复密码加密处理保存用户信息保存成功?显示系统错误注册成功跳转登录页面登录认证机制深度解析我实现了一套企业级的多层次安全认证机制:认
从零到一:打造基于GigaChat AI的艺术创作平台 | 笙囧同学的全栈开发实战
作者简介:笙囧同学,中科院计算机大模型方向硕士,全栈开发爱好者联系方式:
[email protected] 各大平台账号:笙囧同学座右铭:偷懒是人生进步的阶梯前言在AI技术飞速发展的今天,如何将前沿的大模型技术与实际应用相结合,一直是我们开发者关注的焦点。今天,笙囧同学将带大家从零开始,构建一个基于GigaChatAI的艺术创作平台,实现React前端+Django后端的完整全栈解决方案。这不仅仅是
14.tornado操作之应用Websocket协议实现聊天室功能
孤寒者
Tornado框架从入门到实战 websocket tornado 聊天室功能实现 python
目录:每篇前言:1.什么是WebSocket(1)定义(2)优点(3)和HTTP对比(4)适用场景2.WebSocket关键方法3.本tornado项目中使用WebSocket(1)准备一个聊天室的页面:第一步:编写视图:第二步:编写接口:(app.py中加入以下接口!)第三步:编写前端页面:测试接口——响应OK!(2)使用WebSocket:(3)聊天室的聊天功能的最终实现:第一步:战前准备第二
为什么学习Web前端一定要掌握JavaScript?
web前端学习指南
为什么学习Web前端一定要掌握JavaScript?在前端的世界里,没有什么是JavaScript实现不了的,关于JS有一句话:凡是可以用JavaScript来写的应用,最终都会用JavaScript,JavaScript可运行在所有主要平台的所有主流浏览器上,也可运行在每一个主流操作系统的服务器端上。现如今我们在为网站写任何一个主要功能的时候都需要有懂能够用JavaScript写前端的开发人员。
小架构step系列25:错误码
秋千码途
架构 java
1概述一个系统中,可能产生各种各样的错误,对这些错误进行编码。当错误发生时,通过这个错误码就有可能快速判断是什么错误,不一定需要查看代码就可以进行处理,提高问题处理效率。有了统一的错误码,还可以标准化错误信息,方便把错误信息纳入文档管理和对错误信息进行国际化等。没有错误码的管理,开发人员就会按自己的理解处理这些错误。有些直接把堆栈直接反馈到前端页面上,使用看不懂这些信息体验很差,也暴露了堆栈信息有
Java朴实无华按天计划从入门到实战(强化速战版-66天)
岫珩
Java 后端 java 开发语言 学习 Java 时间安排 学习计划
致敬读者感谢阅读笑口常开生日快乐⬛早点睡觉博主相关博主信息博客首页专栏推荐活动信息文章目录Java朴实无华按天计划从入门到实战(强化速战版-66天)1.基础(18)1.1JavaSE核心(5天)1.2数据库与SQL(5天)1.3前端基础(8天)2.进阶(17天)2.1JavaWeb核心(5天)2.2Mybatis与Spring全家桶(6天)2.3中间件入门(4天)2.4实践项目(2天)3.高阶(1
《跨域资源共享CORS的深层逻辑与前端实践精要》
不同源头的资源交互已成为常态,而跨域资源共享(CORS)正是支撑这种交互的隐形架构。现代Web安全体系中平衡开放与防护的精妙设计。理解CORS的深层逻辑,不仅能解决实际开发中的跨域难题,更能触及网络安全与资源流通的核心矛盾,为前端工程师构建稳健的应用提供底层认知支撑。跨域资源共享的诞生,源于网络安全与应用发展的必然冲突。浏览器的同源策略,作为早期网络安全的基石,通过限制不同源文档的交互,有效阻挡了
深入了解 Kubernetes(k8s):从概念到实践
目录一、k8s核心概念二、k8s的优势三、k8s架构组件控制平面组件节点组件四、k8s+docker运行前后端分离项目的例子1.准备前端项目2.准备后端项目3.创建k8s部署配置文件4.部署应用到k8s集群在当今云计算和容器化技术飞速发展的时代,Kubernetes(简称k8s)已成为容器编排领域的事实标准。无论是互联网巨头、传统企业还是初创公司,都在广泛采用k8s来管理和部署容器化应用。本文将带
移动端适配rem方案
简单的码农
1.rem+动态html的font-size1.rem单位是相对于html元素的font-size来设置的,那么如果我们需要在不同的屏幕下有不同的尺寸,可以动态的修改html的font-size尺寸。2.比如如下案例:设置一个盒子的宽度是2rem;设置不同的屏幕上html的font-size不同;image这样在开发中,我们只需要考虑两个问题:问题一:针对不同的屏幕,设置html不同的font-s
Vue CSR 到 Nuxt 3 SSR 迁移:技术实现与问题解决实录
二倍速播放
前端 vue.js
1.迁移动机与技术选型1.1CSR架构的局限性基于Vue3和Vite构建的客户端渲染(CSR)单页应用(SPA)提供了良好的开发体验和用户交互流畅性。但是其核心局限在于:搜索引擎优化(SEO):初始HTML响应仅包含一个根div元素,实际内容由JavaScript在浏览器端动态生成。虽然主流搜索引擎(如Google)能够执行部分JavaScript,但其抓取效率和稳定性不如直接获取完整HTML。非
redis反弹shell时kali无法接收回弹的解决方法
显哥无敌
shell redis
无法接受回谈大概率是bash命令写的不对,那个crontab中间的星号个数是有意义的,不是随便加的,下面贴一下crontab的基本用法https://www.cnblogs.com/zhoading/p/11572630.html{minute}{hour}{day-of-month}{month}{day-of-week}{full-path-to-shell-script}如果是要cronta
构建基于Android Studio开发天气预报应用
策划加强小乔
Android studio android
AndroidStudio开发天气预报应用需要完成API调用、UI设计、数据解析等步骤。以下是基于OpenWeatherMapAPI的实现方法,包含关键代码片段和详细说明。环境准备与项目创建确保已安装AndroidStudio最新版本,创建新项目选择EmptyActivity模板。在build.gradle模块文件中添加必要依赖:dependencies{implementation'com.sq
native.js设置可缩放的webview并隐藏缩放控件
Nanayai
需求明确:webview页面可以手指缩放,并且不要那个原生控件;实现思路:1.使用h5+封装好的方法:设置scalable属性,并在html中设置meta标签:user-scalable=yes或不设置,minimum-scale和maximum-scale需要注意不要都设为1:mui.openWindow({url:"someThing",id:"someThing",styles:{scala
大厂都在用的前端缓存策略,你掌握了吗?
AI架构全栈开发实战笔记
前端 缓存 ai
大厂都在用的前端缓存策略,你掌握了吗?关键词:前端缓存、HTTP缓存、ServiceWorker、CDN缓存、缓存策略、性能优化、浏览器缓存摘要:本文将深入探讨前端开发中常用的缓存策略,从浏览器缓存到ServiceWorker,从HTTP缓存头到CDN缓存,全面解析大厂都在使用的高效缓存技术。通过生动的比喻和实际代码示例,帮助开发者理解并掌握这些提升Web应用性能的关键技术。背景介绍目的和范围本文
Redis反弹Shell
波吉爱睡觉
web安全 #未授权访问漏洞 #SSRF redis 网络安全 web安全
这里我来总结几种Redis反弹Shell的方法一、利用Redis写WebShell前提条件开了web服务器,并且知道路径,还需要有文件读写增删改查的权限条件比较苛刻,但是满足条件上传就会简单一点,我们直接将文件写入www目录下,完了使用工具连接即可。语句:redis:6379>configsetdir/var/www/html/redis:6379>configsetdbfilenameshell
26. 什么是雪碧图,作用和原理了解吗
yqcoder
前端面试-CSS css 前端 html
总结小图合成一张,使用background来使用,减少资源请求一、什么是雪碧图?雪碧图(CSSSprite)是一种前端优化技术,指的是将多个小图标合并成一张大图,通过CSS控制显示其中的某一部分。它常用于网站中图标、按钮等小图较多的场景。二、雪碧图的作用作用说明✅减少HTTP请求次数合并多个图片为一张图,减少请求资源数✅提升页面加载速度尤其在图片较多时效果明显✅避免图片加载闪烁鼠标悬停切换图片时不
log4j对象改变日志级别
3213213333332132
java log4j level log4j对象名称 日志级别
log4j对象改变日志级别可批量的改变所有级别,或是根据条件改变日志级别。
log4j配置文件:
log4j.rootLogger=ERROR,FILE,CONSOLE,EXECPTION
#log4j.appender.FILE=org.apache.log4j.RollingFileAppender
log4j.appender.FILE=org.apache.l
elk+redis 搭建nginx日志分析平台
ronin47
elasticsearch kibana logstash
elk+redis 搭建nginx日志分析平台
logstash,elasticsearch,kibana 怎么进行nginx的日志分析呢?首先,架构方面,nginx是有日志文件的,它的每个请求的状态等都有日志文件进行记录。其次,需要有个队 列,redis的l
Yii2设置时区
dcj3sjt126com
PHP timezone yii2
时区这东西,在开发的时候,你说重要吧,也还好,毕竟没它也能正常运行,你说不重要吧,那就纠结了。特别是linux系统,都TMD差上几小时,你能不痛苦吗?win还好一点。有一些常规方法,是大家目前都在采用的1、php.ini中的设置,这个就不谈了,2、程序中公用文件里设置,date_default_timezone_set一下时区3、或者。。。自己写时间处理函数,在遇到时间的时候,用这个函数处理(比较
js实现前台动态添加文本框,后台获取文本框内容
171815164
文本框
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w
持续集成工具
g21121
持续集成
持续集成是什么?我们为什么需要持续集成?持续集成带来的好处是什么?什么样的项目需要持续集成?... 持续集成(Continuous integration ,简称CI),所谓集成可以理解为将互相依赖的工程或模块合并成一个能单独运行
数据结构哈希表(hash)总结
永夜-极光
数据结构
1.什么是hash
来源于百度百科:
Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入,通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来唯一的确定输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。
乱七八糟
程序员是怎么炼成的
eclipse中的jvm字节码查看插件地址:
http://andrei.gmxhome.de/eclipse/
安装该地址的outline 插件 后重启,打开window下的view下的bytecode视图
http://andrei.gmxhome.de/eclipse/
jvm博客:
http://yunshen0909.iteye.com/blog/2
职场人伤害了“上司” 怎样弥补
aijuans
职场
由于工作中的失误,或者平时不注意自己的言行“伤害”、“得罪”了自己的上司,怎么办呢?
在职业生涯中这种问题尽量不要发生。下面提供了一些解决问题的建议:
一、利用一些轻松的场合表示对他的尊重
即使是开明的上司也很注重自己的权威,都希望得到下属的尊重,所以当你与上司冲突后,最好让不愉快成为过去,你不妨在一些轻松的场合,比如会餐、联谊活动等,向上司问个好,敬下酒,表示你对对方的尊重,
深入浅出url编码
antonyup_2006
应用服务器 浏览器 servlet weblogic IE
出处:http://blog.csdn.net/yzhz 杨争
http://blog.csdn.net/yzhz/archive/2007/07/03/1676796.aspx
一、问题:
编码问题是JAVA初学者在web开发过程中经常会遇到问题,网上也有大量相关的
建表后创建表的约束关系和增加表的字段
百合不是茶
标的约束关系 增加表的字段
下面所有的操作都是在表建立后操作的,主要目的就是熟悉sql的约束,约束语句的万能公式
1,增加字段(student表中增加 姓名字段)
alter table 增加字段的表名 add 增加的字段名 增加字段的数据类型
alter table student add name varchar2(10);
&nb
Uploadify 3.2 参数属性、事件、方法函数详解
bijian1013
JavaScript uploadify
一.属性
属性名称
默认值
说明
auto
true
设置为true当选择文件后就直接上传了,为false需要点击上传按钮才上传。
buttonClass
”
按钮样式
buttonCursor
‘hand’
鼠标指针悬停在按钮上的样子
buttonImage
null
浏览按钮的图片的路
精通Oracle10编程SQL(16)使用LOB对象
bijian1013
oracle 数据库 plsql
/*
*使用LOB对象
*/
--LOB(Large Object)是专门用于处理大对象的一种数据类型,其所存放的数据长度可以达到4G字节
--CLOB/NCLOB用于存储大批量字符数据,BLOB用于存储大批量二进制数据,而BFILE则存储着指向OS文件的指针
/*
*综合实例
*/
--建立表空间
--#指定区尺寸为128k,如不指定,区尺寸默认为64k
CR
【Resin一】Resin服务器部署web应用
bit1129
resin
工作中,在Resin服务器上部署web应用,通常有如下三种方式:
配置多个web-app
配置多个http id
为每个应用配置一个propeties、xml以及sh脚本文件
配置多个web-app
在resin.xml中,可以为一个host配置多个web-app
<cluster id="app&q
red5简介及基础知识
白糖_
基础
简介
Red5的主要功能和Macromedia公司的FMS类似,提供基于Flash的流媒体服务的一款基于Java的开源流媒体服务器。它由Java语言编写,使用RTMP作为流媒体传输协议,这与FMS完全兼容。它具有流化FLV、MP3文件,实时录制客户端流为FLV文件,共享对象,实时视频播放、Remoting等功能。用Red5替换FMS后,客户端不用更改可正
angular.fromJson
boyitech
AngularJS AngularJS 官方API AngularJS API
angular.fromJson 描述: 把Json字符串转为对象 使用方法: angular.fromJson(json); 参数详解: Param Type Details json
string
JSON 字符串 返回值: 对象, 数组, 字符串 或者是一个数字 示例:
<!DOCTYPE HTML>
<h
java-颠倒一个句子中的词的顺序。比如: I am a student颠倒后变成:student a am I
bylijinnan
java
public class ReverseWords {
/**
* 题目:颠倒一个句子中的词的顺序。比如: I am a student颠倒后变成:student a am I.词以空格分隔。
* 要求:
* 1.实现速度最快,移动最少
* 2.不能使用String的方法如split,indexOf等等。
* 解答:两次翻转。
*/
publ
web实时通讯
Chen.H
Web 浏览器 socket 脚本
关于web实时通讯,做一些监控软件。
由web服务器组件从消息服务器订阅实时数据,并建立消息服务器到所述web服务器之间的连接,web浏览器利用从所述web服务器下载到web页面的客户端代理与web服务器组件之间的socket连接,建立web浏览器与web服务器之间的持久连接;利用所述客户端代理与web浏览器页面之间的信息交互实现页面本地更新,建立一条从消息服务器到web浏览器页面之间的消息通路
[基因与生物]远古生物的基因可以嫁接到现代生物基因组中吗?
comsci
生物
大家仅仅把我说的事情当作一个IT行业的笑话来听吧..没有其它更多的意思
如果我们把大自然看成是一位伟大的程序员,专门为地球上的生态系统编制基因代码,并创造出各种不同的生物来,那么6500万年前的程序员开发的代码,是否兼容现代派的程序员的代码和架构呢?
oracle 外部表
daizj
oracle 外部表 external tables
oracle外部表是只允许只读访问,不能进行DML操作,不能创建索引,可以对外部表进行的查询,连接,排序,创建视图和创建同义词操作。
you can select, join, or sort external table data. You can also create views and synonyms for external tables. Ho
aop相关的概念及配置
daysinsun
AOP
切面(Aspect):
通常在目标方法执行前后需要执行的方法(如事务、日志、权限),这些方法我们封装到一个类里面,这个类就叫切面。
连接点(joinpoint)
spring里面的连接点指需要切入的方法,通常这个joinpoint可以作为一个参数传入到切面的方法里面(非常有用的一个东西)。
通知(Advice)
通知就是切面里面方法的具体实现,分为前置、后置、最终、异常环
初一上学期难记忆单词背诵第二课
dcj3sjt126com
english word
middle 中间的,中级的
well 喔,那么;好吧
phone 电话,电话机
policeman 警察
ask 问
take 拿到;带到
address 地址
glad 高兴的,乐意的
why 为什么
China 中国
family 家庭
grandmother (外)祖母
grandfather (外)祖父
wife 妻子
husband 丈夫
da
Linux日志分析常用命令
dcj3sjt126com
linux log
1.查看文件内容
cat
-n 显示行号 2.分页显示
more
Enter 显示下一行
空格 显示下一页
F 显示下一屏
B 显示上一屏
less
/get 查询"get"字符串并高亮显示 3.显示文件尾
tail
-f 不退出持续显示
-n 显示文件最后n行 4.显示头文件
head
-n 显示文件开始n行 5.内容排序
sort
-n 按照
JSONP 原理分析
fantasy2005
JavaScript jsonp jsonp 跨域
转自 http://www.nowamagic.net/librarys/veda/detail/224
JavaScript是一种在Web开发中经常使用的前端动态脚本技术。在JavaScript中,有一个很重要的安全性限制,被称为“Same-Origin Policy”(同源策略)。这一策略对于JavaScript代码能够访问的页面内容做了很重要的限制,即JavaScript只能访问与包含它的
使用connect by进行级联查询
234390216
oracle 查询 父子 Connect by 级联
使用connect by进行级联查询
connect by可以用于级联查询,常用于对具有树状结构的记录查询某一节点的所有子孙节点或所有祖辈节点。
来看一个示例,现假设我们拥有一个菜单表t_menu,其中只有三个字段:
一个不错的能将HTML表格导出为excel,pdf等的jquery插件
jackyrong
jquery插件
发现一个老外写的不错的jquery插件,可以实现将HTML
表格导出为excel,pdf等格式,
地址在:
https://github.com/kayalshri/
下面看个例子,实现导出表格到excel,pdf
<html>
<head>
<title>Export html table to excel an
UI设计中我们为什么需要设计动效
lampcy
UI UI设计
关于Unity3D中的Shader的知识
首先先解释下Unity3D的Shader,Unity里面的Shaders是使用一种叫ShaderLab的语言编写的,它同微软的FX文件或者NVIDIA的CgFX有些类似。传统意义上的vertex shader和pixel shader还是使用标准的Cg/HLSL 编程语言编写的。因此Unity文档里面的Shader,都是指用ShaderLab编写的代码,
如何禁止页面缓存
nannan408
html jsp cache
禁止页面使用缓存~
------------------------------------------------
jsp:页面no cache:
response.setHeader("Pragma","No-cache");
response.setHeader("Cache-Control","no-cach
以代码的方式管理quartz定时任务的暂停、重启、删除、添加等
Everyday都不同
定时任务管理 spring-quartz
【前言】在项目的管理功能中,对定时任务的管理有时会很常见。因为我们不能指望只在配置文件中配置好定时任务就行了,因为如果要控制定时任务的 “暂停” 呢?暂停之后又要在某个时间点 “重启” 该定时任务呢?或者说直接 “删除” 该定时任务呢?要改变某定时任务的触发时间呢? “添加” 一个定时任务对于系统的使用者而言,是不太现实的,因为一个定时任务的处理逻辑他是不
EXT实例
tntxia
ext
(1) 增加一个按钮
JSP:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
Stri
数学学习在计算机研究领域的作用和重要性
xjnine
Math
最近一直有师弟师妹和朋友问我数学和研究的关系,研一要去学什么数学课。毕竟在清华,衡量一个研究生最重要的指标之一就是paper,而没有数学,是肯定上不了世界顶级的期刊和会议的,这在计算机学界尤其重要!你会发现,不论哪个领域有价值的东西,都一定离不开数学!在这样一个信息时代,当google已经让世界没有秘密的时候,一种卓越的数学思维,绝对可以成为你的核心竞争力. 无奈本人实在见地