- Ubuntu下MATLAB不能保存路径设置的解决办法(借助MATLAB启动项修改)
LyaPan
ubuntumatlablinux
我的Ubuntu22.04上的MATLABR2023a不能保存路径设置,每次重启都需要重新设置路径,很是麻烦。网上一搜,全是说给pathdef.m加权限就能解决的,但实际操作下来发现还是没用。经探索,另一种方式就是通过修改启动文件来修改启动选项了,这样每次启动MATLAB时都会自动执行我们的脚本。下面对此进行介绍:使用MATLAB启动文件(StartupFile)修改启动选项可以用startup.
- 使用表格插件poi导出报表
进击的三文鱼
近来使用poi做了一个导出单据的功能。@RequestMapping(path="/export_client_check",method={RequestMethod.GET})publicArapFileResponsegetExportData(@RequestParam(name="ids",required=true)String[]ids){ArapFileResponserespon
- Pycharm如何设置自动换行
香辣西红柿炒蛋
#pycharmpycharmpython
代码编辑区自动换行对所有文件有效:(1)File->Settings->Editor->General;(2)找到SoftWraps,勾选Soft-wrapfiles;(3)在输入框中添加;*.py,如下图所示;
- Linux 的解压命令
第七原色
解压tar–xvffile.tar解压tar包tar-xzvffile.tar.gz解压tar.gztar-xjvffile.tar.bz2解压tar.bz2tar–xZvffile.tar.Z解压tar.Zunrarefile.rar解压rarunzipfile.zip解压zip
- 【项目实战】在 Python 中,可以通过 `subprocess` 模块调用系统的压缩程序(如 7-Zip 或系统自带的zip命令)来实现文件或文件夹的压缩。
本本本添哥
011-Pythonpython7-zip开发语言
在Python中,可以通过subprocess模块调用系统的压缩程序(如7-Zip或系统自带的zip命令)来实现文件或文件夹的压缩。通过subprocess调用系统压缩工具(如7-Zip)是最灵活的方式,支持多线程、密码保护和多种压缩格式。需注意路径配置和参数的正确性,并通过异常处理提升代码健壮性。对于轻量需求,可优先考虑zipfile或py7zr等库。以下是详细的实现方法和注意事项:1.使用7-
- 处理Electron Builder 创建新进程错误 spawn ENOMEM
这个错误spawnENOMEM表明系统内存不足,无法为ElectronBuilder创建新进程。以下是一些可能的解决方案:释放系统内存关闭不必要的程序和服务增加物理内存(RAM)或交换空间(swap)使用free-h和top命令检查内存使用情况临时增加交换空间#创建一个4G的交换文件sudofallocate-l4G/swapfilesudochmod600/swapfilesudomkswap/
- 小白学Python,压缩和解压文件
目录前言一、判断文件是否为Zip文件二、打开压缩文件三、解压文件四、获取Zip文件中文件的属性信息前言Python标准库中的zipfile库可用于处理压缩文件,.zip是一种常用的压缩文件格式。zipfile库中包含用于查看Zip文件、解压Zip文件、将文件压缩为Zip文件等的方法。需要注意的是,在使用zipfile库前需要使用import导入zipfile库。一、判断文件是否为Zip文件zipf
- 性能优化 —— 通过移除 pagefile.sys 和 hiberfil.sys 文件释放C盘空间(不推荐)
ice.Ynov23
WindowsSolutionswindows
通过移除pagefile.sys和hiberfil.sys文件释放C盘空间(不推荐)点击查看->选项->文件夹选项->查看,取消勾选“隐藏受保护的操作系统文件(推荐)”,选择“显示隐藏的文件,文件夹和驱动”,C盘下面会出现三个文件hiberfil.sys,pagefile.sys还有swapfile.sys那么问题来了:文件hiberfil.sys,pagefile.sys是干啥的呀?可以删掉么?
- android Input子系统分析(内核层->android系统层)
InputTechnicalInformationAndroid输入子系统支持许多不同的设备类,包括键盘,摇杆,轨迹球,鼠标和触摸屏.这份文档描述了上层如何配置,校准,测试,和编写输入设备驱动.InputConceptsOverviewKeyLayoutFilesKeyCharacterMapFilesInputDeviceConfigurationFilesMigrationGuideInput
- 大模型学习应用 5: Vercel 部署 Python FastAPI 项目完整指南
大地之灯
大模型应用与学习学习pythonfastapi大模型应用开发github
目录Vercel部署PythonFastAPI项目完整指南一、项目代码结构介绍1.1项目目录结构1.2核心文件代码解析1.2.1FastAPI主应用(`api/app.py`)1.2.2基础Python函数(`api/hello.py`)1.2.3依赖配置(`requirements.txt`)1.2.4Python环境配置(`Pipfile`)1.2.5路由配置(`vercel.json`)二、
- linux操作命令笔记
笑衬人心。
linux笔记运维
一、文件和目录管理命令作用示例ls列出目录内容ls-l、ls-acd切换目录cd/etcpwd显示当前路径pwdmkdir创建目录mkdirtestrmdir删除空目录rmdirtestrm删除文件/目录rmfile、rm-rfdir/cp复制文件/目录cpfile1file2、cp-rdir1dir2mv移动或重命名mvold.txtnew.txttouch创建空文件touchnew.txtst
- 6.kaggle实战之房价预测
温柔济沧海
深度学习神经网络人工智能python深度学习
importhashlibimportosimporttarfileimportzipfileimportrequestsimportnumpyasnpimportpandasaspdimporttorchimportnumpyasnpfromtorchimportnnimportmatplotlib.pyplotaspltfromtorch.utils.dataimportDataLoader,
- Python替换docx模板文件内容
amux9527
笔记python
#-*-coding:utf-8-*-#File:docx模板文件内容替换.py#Time:2022-07-2910:13#Author:Da#Description:docx模板文件内容替换importosimportshutilimportzipfile#解压docx文件到指定目录defunpack(input_file,out_file):ifos.path.exists(input_fil
- Python包版本分析工具开发:从PyPI私有源快速提取元数据
YoungHong1992
pythonwindows开发语言
importsubprocessimportreimportosimportsysimporttempfileimportzipfilefromemail.parserimportParserfromtypingimportList,Dict,Optional,Anyfromjinja2importEnvironmentfrompackaging.versionimportparseasparse
- python tab键自动补全_为python命令行添加Tab键自动补全功能
weixin_39692253
pythontab键自动补全
在使用linux命令的时候我们习惯使用下Tab键,在python下我们也可以实现类似的功能。具体代码如下:$catstartup.py#!/usr/bin/python#pythonstartupfileimportsysimportreadlineimportrlcompleterimportatexitimportos#tabcompletionreadline.parse_and_bind(
- Python网安-zip文件暴力破解(仅供学习)
Whoisshutiao
python网安python开发语言网络安全
目录源码在这里需要的模块准备一个密码本和需要破解的ZIP文件一行一行地从密码文件中读取每个密码。核心部分注意,需要修改上段代码注释里的这段具有编码问题的代码:源码在这里https://github.com/Wist-fully/Attack/tree/cracker需要的模块fromtqdmimporttqdmimportzipfileimportpyzipper准备一个密码本和需要破解的ZIP文
- Oracle 导入导出 dmp 数据文件实战
dazhong2012
数据库oracle数据库
一、DMP文件基础知识1.DMP文件定义DMP(DataPumpDumpFile)是Oracle数据库专用的二进制格式文件,由expdp/impdp或旧版exp/imp工具生成。它包含数据库对象的元数据(表结构、索引等)和实际数据,是数据备份、迁移和恢复的核心载体。2.DMP文件结构文件头:记录Oracle版本、字符集、导出时间等元信息。数据段:存储表数据,按数据块组织,支持并行读写。索引段:加速
- buuctf新生赛(ACTF2020)
HfLllo
linux运维服务器
1.Upload:文件上传,phtml2.BackupFile:codesearch找备份文件,弱类型比较==(只要求值相等)3.Exec:网站;ls(linux列出当前目录有哪些文件和目录)网站;ls/(看根目录里有什么内容)查看文件:web;cat/file4.Include:php://filter/read=convert.base64-encode/resource=file.php,再
- VSCode源码添加VSCode自定义插件
成遇
VScodevscodeide编辑器
VSCode源码添加VSCode自定义插件创建VSCode插件编译VSCode源码添加VSCode插件源码至VSCode源码中`vscode\.vscode-test.js``vscode\.vscode\launch.json``vscode\build\gulpfile.extensions.js``vscode\build\azure-pipelines\darwin\product-bui
- java解压zip文件
qq_21526409
java开发语言
importjava.io.*;importjava.nio.charset.Charset;importjava.util.Enumeration;importjava.util.zip.ZipEntry;importjava.util.zip.ZipFile;importjava.util.zip.ZipInputStream;publicclassUnzipUtils{/***zip文件里面
- 【uniapp】给图片添加水印
改bug的101天
uniappuni-appvue.js前端
1、创建画布varcontext=uni.createCanvasContext('Canvas')2、获取本地图片uni.chooseImage({count:1,success:(res)=>{varfile=res.tempFilePaths[0];consttempFiles=res.tempFiles[0]})})3、获取图片信息----添加水印uni.getImageInfo({src
- import setuptools.version遇到pkg_resource异常
Pianist Of Keyboard
python
背景在自己写的包中使用到joblib和setuptools,在导入的时候经常容易卡主,一次严重影响到了生产,故尝试解决。File"/root/xxxx/xxxx/util/dependencies.py",line25,infromjoblibimportdelayed,load,dumpFile"/root/miniconda/envs/py39/lib/python3.9/site-packa
- uniapp小程序在线预览
weixin_52406641
uni-app小程序前端
文章目录此文章主要为自己的笔记,所以直接上代码此文章主要为自己的笔记,所以直接上代码代码如下:chakan(){letthat=thisuni.downloadFile({url:that.fileUrl,//必须是HTTPS地址(小程序要求)success:function(res){consttempFilePaths=res.tempFilePath;console.log(tempFile
- 合并小文件汇总(Hive/Spark)
有数的编程笔记
Spark/Hivehivesparkhadoop
合并小文件的原因:过多的小文件会导致HDFS上元数据负载增加。并且小文件也会导致计算性能下降。1.使用hive时1.1.使用hive.merge参数,开启文件合并--控制在map阶段结束后合并输出的小文件,默认值为trueSEThive.merge.mapfiles=true;--控制在reduce阶段结束后合并输出小文件,默认值为falseSEThive.merge.mapredfiles=tr
- 【AI编程】第3期,针对AI生成的改枪码列表创建对应的数据库表
Karle_
AI编程数据库
表字段定义:{"id":198,"upid":4,"game_name":"三角洲行动","level1":"烽火地带","level2":"步枪","cover":"https://mpfile.shifoukeji.com/images/gun/14.png","name":"PTR-32","codes":"性价比6G27RGG02CVGNGOLBMSRO$$$满改6G27RHS02CVGN
- 修改配对的节点名字
胖大和尚
shell
您指出了一个重要问题。之前的脚本只修改了开始标签,没有处理结束标签。让我提供一个完整的解决方案,同时修改开始标签和结束标签:#!/bin/bash#定义要添加的前缀PREFIX="New_"#使用xmlstarlet工具处理XML文件forxmlfilein*.xml;do#创建临时文件tempfile=$(mktemp)#处理XML文件-同时修改开始和结束标签xmlstarleted\-r"//
- 49-Oracle init.ora-PFILE-SPFILE-启动参数转换实操
远方1609
oracle数据库sqldatabase
一早出现EMCC挂了,之后发现EMCC依赖的instance挂了,重启startup后发现spfile无法启动。还是和小伙伴把基础问题搞清。spfile是动态文件、动态文件、动态文件,linux下vi看起来部分乱码部分是可编辑的,vi即使可以编辑也需要转换成pfile这样的文本文件再使用,记得备份备份备份。Oracle数据库启动时依赖参数文件配置实例行为:SPFILE(服务器参数文件)、PFILE
- NT缓存管理器(三)
less@more
cachingobjectbufferintegerpointerscache
CcCanIWrite因为应用程序能够在内存中以大于写回磁盘的速度修改数据,虚拟内存系统能用数据填满。这反过来在VM系统中能够导致致命的out-of-memory情况。缓存管理器提供的一个支持这个的关键操作是CcCanIWrite.这种回调的原型是:NTKERNELAPIBOOLEANCcCanIWrite(INPFILE_OBJECTFileObject,INULONGBytesToWrite,
- 60. Zip_Tar文件压缩与解压
丰收连山
前端pythonjavascriptjava网络开发语言
一、zip文件操作zipfile模块基础用法概念定义zipfile是Python标准库中用于处理ZIP压缩文件的模块,提供了创建、读取、写入和提取ZIP文件的功能。使用场景批量压缩多个文件解压接收到的ZIP文件检查ZIP文件内容向现有ZIP文件添加新文件常见注意事项路径处理建议使用绝对路径大文件操作时建议分块处理中文文件名需要确认编码格式操作完成后需要关闭ZIP文件示例代码importzipfil
- GoldenGate系列之集成模式
weixin_34272308
数据库
一、集成模式进程配置1、用户授权:execdbms_goldengate_auth.grant_admin_privilege('goldengate');2、参数调整:altersystemsetstreams_pool_size=12gscope=spfile;3、执行注册:dbloginuseridgoldengatepasswordxxxregisterextractcapture01da
- 如何用ruby来写hadoop的mapreduce并生成jar包
wudixiaotie
mapreduce
ruby来写hadoop的mapreduce,我用的方法是rubydoop。怎么配置环境呢:
1.安装rvm:
不说了 网上有
2.安装ruby:
由于我以前是做ruby的,所以习惯性的先安装了ruby,起码调试起来比jruby快多了。
3.安装jruby:
rvm install jruby然后等待安
- java编程思想 -- 访问控制权限
百合不是茶
java访问控制权限单例模式
访问权限是java中一个比较中要的知识点,它规定者什么方法可以访问,什么不可以访问
一:包访问权限;
自定义包:
package com.wj.control;
//包
public class Demo {
//定义一个无参的方法
public void DemoPackage(){
System.out.println("调用
- [生物与医学]请审慎食用小龙虾
comsci
生物
现在的餐馆里面出售的小龙虾,有一些是在野外捕捉的,这些小龙虾身体里面可能带有某些病毒和细菌,人食用以后可能会导致一些疾病,严重的甚至会死亡.....
所以,参加聚餐的时候,最好不要点小龙虾...就吃养殖的猪肉,牛肉,羊肉和鱼,等动物蛋白质
- org.apache.jasper.JasperException: Unable to compile class for JSP:
商人shang
maven2.2jdk1.8
环境: jdk1.8 maven tomcat7-maven-plugin 2.0
原因: tomcat7-maven-plugin 2.0 不知吃 jdk 1.8,换成 tomcat7-maven-plugin 2.2就行,即
<plugin>
- 你的垃圾你处理掉了吗?GC
oloz
GC
前序:本人菜鸟,此文研究学习来自网络,各位牛牛多指教
1.垃圾收集算法的核心思想
Java语言建立了垃圾收集机制,用以跟踪正在使用的对象和发现并回收不再使用(引用)的对象。该机制可以有效防范动态内存分配中可能发生的两个危险:因内存垃圾过多而引发的内存耗尽,以及不恰当的内存释放所造成的内存非法引用。
垃圾收集算法的核心思想是:对虚拟机可用内存空间,即堆空间中的对象进行识别
- shiro 和 SESSSION
杨白白
shiro
shiro 在web项目里默认使用的是web容器提供的session,也就是说shiro使用的session是web容器产生的,并不是自己产生的,在用于非web环境时可用其他来源代替。在web工程启动的时候它就和容器绑定在了一起,这是通过web.xml里面的shiroFilter实现的。通过session.getSession()方法会在浏览器cokkice产生JESSIONID,当关闭浏览器,此
- 移动互联网终端 淘宝客如何实现盈利
小桔子
移動客戶端淘客淘寶App
2012年淘宝联盟平台为站长和淘宝客带来的分成收入突破30亿元,同比增长100%。而来自移动端的分成达1亿元,其中美丽说、蘑菇街、果库、口袋购物等App运营商分成近5000万元。 可以看出,虽然目前阶段PC端对于淘客而言仍旧是盈利的大头,但移动端已经呈现出爆发之势。而且这个势头将随着智能终端(手机,平板)的加速普及而更加迅猛
- wordpress小工具制作
aichenglong
wordpress小工具
wordpress 使用侧边栏的小工具,很方便调整页面结构
小工具的制作过程
1 在自己的主题文件中新建一个文件夹(如widget),在文件夹中创建一个php(AWP_posts-category.php)
小工具是一个类,想侧边栏一样,还得使用代码注册,他才可以再后台使用,基本的代码一层不变
<?php
class AWP_Post_Category extends WP_Wi
- JS微信分享
AILIKES
js
// 所有功能必须包含在 WeixinApi.ready 中进行
WeixinApi.ready(function(Api) {
// 微信分享的数据
var wxData = {
&nb
- 封装探讨
百合不是茶
JAVA面向对象 封装
//封装 属性 方法 将某些东西包装在一起,通过创建对象或使用静态的方法来调用,称为封装;封装其实就是有选择性地公开或隐藏某些信息,它解决了数据的安全性问题,增加代码的可读性和可维护性
在 Aname类中申明三个属性,将其封装在一个类中:通过对象来调用
例如 1:
//属性 将其设为私有
姓名 name 可以公开
- jquery radio/checkbox change事件不能触发的问题
bijian1013
JavaScriptjquery
我想让radio来控制当前我选择的是机动车还是特种车,如下所示:
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"><
- AngularJS中安全性措施
bijian1013
JavaScriptAngularJS安全性XSRFJSON漏洞
在使用web应用中,安全性是应该首要考虑的一个问题。AngularJS提供了一些辅助机制,用来防护来自两个常见攻击方向的网络攻击。
一.JSON漏洞
当使用一个GET请求获取JSON数组信息的时候(尤其是当这一信息非常敏感,
- [Maven学习笔记九]Maven发布web项目
bit1129
maven
基于Maven的web项目的标准项目结构
user-project
user-core
user-service
user-web
src
- 【Hive七】Hive用户自定义聚合函数(UDAF)
bit1129
hive
用户自定义聚合函数,用户提供的多个入参通过聚合计算(求和、求最大值、求最小值)得到一个聚合计算结果的函数。
问题:UDF也可以提供输入多个参数然后输出一个结果的运算,比如加法运算add(3,5),add这个UDF需要实现UDF的evaluate方法,那么UDF和UDAF的实质分别究竟是什么?
Double evaluate(Double a, Double b)
- 通过 nginx-lua 给 Nginx 增加 OAuth 支持
ronin47
前言:我们使用Nginx的Lua中间件建立了OAuth2认证和授权层。如果你也有此打算,阅读下面的文档,实现自动化并获得收益。SeatGeek 在过去几年中取得了发展,我们已经积累了不少针对各种任务的不同管理接口。我们通常为新的展示需求创建新模块,比如我们自己的博客、图表等。我们还定期开发内部工具来处理诸如部署、可视化操作及事件处理等事务。在处理这些事务中,我们使用了几个不同的接口来认证:
&n
- 利用tomcat-redis-session-manager做session同步时自定义类对象属性保存不上的解决方法
bsr1983
session
在利用tomcat-redis-session-manager做session同步时,遇到了在session保存一个自定义对象时,修改该对象中的某个属性,session未进行序列化,属性没有被存储到redis中。 在 tomcat-redis-session-manager的github上有如下说明: Session Change Tracking
As noted in the &qu
- 《代码大全》表驱动法-Table Driven Approach-1
bylijinnan
java算法
关于Table Driven Approach的一篇非常好的文章:
http://www.codeproject.com/Articles/42732/Table-driven-Approach
package com.ljn.base;
import java.util.Random;
public class TableDriven {
public
- Sybase封锁原理
chicony
Sybase
昨天在操作Sybase IQ12.7时意外操作造成了数据库表锁定,不能删除被锁定表数据也不能往其中写入数据。由于着急往该表抽入数据,因此立马着手解决该表的解锁问题。 无奈此前没有接触过Sybase IQ12.7这套数据库产品,加之当时已属于下班时间无法求助于支持人员支持,因此只有借助搜索引擎强大的
- java异常处理机制
CrazyMizzz
java
java异常关键字有以下几个,分别为 try catch final throw throws
他们的定义分别为
try: Opening exception-handling statement.
catch: Captures the exception.
finally: Runs its code before terminating
- hive 数据插入DML语法汇总
daizj
hiveDML数据插入
Hive的数据插入DML语法汇总1、Loading files into tables语法:1) LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)]解释:1)、上面命令执行环境为hive客户端环境下: hive>l
- 工厂设计模式
dcj3sjt126com
设计模式
使用设计模式是促进最佳实践和良好设计的好办法。设计模式可以提供针对常见的编程问题的灵活的解决方案。 工厂模式
工厂模式(Factory)允许你在代码执行时实例化对象。它之所以被称为工厂模式是因为它负责“生产”对象。工厂方法的参数是你要生成的对象对应的类名称。
Example #1 调用工厂方法(带参数)
<?phpclass Example{
- mysql字符串查找函数
dcj3sjt126com
mysql
FIND_IN_SET(str,strlist)
假如字符串str 在由N 子链组成的字符串列表strlist 中,则返回值的范围在1到 N 之间。一个字符串列表就是一个由一些被‘,’符号分开的自链组成的字符串。如果第一个参数是一个常数字符串,而第二个是type SET列,则 FIND_IN_SET() 函数被优化,使用比特计算。如果str不在strlist 或st
- jvm内存管理
easterfly
jvm
一、JVM堆内存的划分
分为年轻代和年老代。年轻代又分为三部分:一个eden,两个survivor。
工作过程是这样的:e区空间满了后,执行minor gc,存活下来的对象放入s0, 对s0仍会进行minor gc,存活下来的的对象放入s1中,对s1同样执行minor gc,依旧存活的对象就放入年老代中;
年老代满了之后会执行major gc,这个是stop the word模式,执行
- CentOS-6.3安装配置JDK-8
gengzg
centos
JAVA_HOME=/usr/java/jdk1.8.0_45
JRE_HOME=/usr/java/jdk1.8.0_45/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME
- 【转】关于web路径的获取方法
huangyc1210
Web路径
假定你的web application 名称为news,你在浏览器中输入请求路径: http://localhost:8080/news/main/list.jsp 则执行下面向行代码后打印出如下结果: 1、 System.out.println(request.getContextPath()); //可返回站点的根路径。也就是项
- php里获取第一个中文首字母并排序
远去的渡口
数据结构PHP
很久没来更新博客了,还是觉得工作需要多总结的好。今天来更新一个自己认为比较有成就的问题吧。 最近在做储值结算,需求里结算首页需要按门店的首字母A-Z排序。我的数据结构原本是这样的:
Array
(
[0] => Array
(
[sid] => 2885842
[recetcstoredpay] =&g
- java内部类
hm4123660
java内部类匿名内部类成员内部类方法内部类
在Java中,可以将一个类定义在另一个类里面或者一个方法里面,这样的类称为内部类。内部类仍然是一个独立的类,在编译之后内部类会被编译成独立的.class文件,但是前面冠以外部类的类名和$符号。内部类可以间接解决多继承问题,可以使用内部类继承一个类,外部类继承一个类,实现多继承。
&nb
- Caused by: java.lang.IncompatibleClassChangeError: class org.hibernate.cfg.Exten
zhb8015
maven pom.xml关于hibernate的配置和异常信息如下,查了好多资料,问题还是没有解决。只知道是包冲突,就是不知道是哪个包....遇到这个问题的分享下是怎么解决的。。
maven pom:
<dependency>
<groupId>org.hibernate</groupId>
<ar
- Spark 性能相关参数配置详解-任务调度篇
Stark_Summer
sparkcachecpu任务调度yarn
随着Spark的逐渐成熟完善, 越来越多的可配置参数被添加到Spark中来, 本文试图通过阐述这其中部分参数的工作原理和配置思路, 和大家一起探讨一下如何根据实际场合对Spark进行配置优化。
由于篇幅较长,所以在这里分篇组织,如果要看最新完整的网页版内容,可以戳这里:http://spark-config.readthedocs.org/,主要是便
- css3滤镜
wangkeheng
htmlcss
经常看到一些网站的底部有一些灰色的图标,鼠标移入的时候会变亮,开始以为是js操作src或者bg呢,搜索了一下,发现了一个更好的方法:通过css3的滤镜方法。
html代码:
<a href='' class='icon'><img src='utv.jpg' /></a>
css代码:
.icon{-webkit-filter: graysc