我一直在研究一个新的响应式网站设计,我有一个画廊,其中包含一个图像网格,当浏览器视口为 768 像素或以上时,跨越 4 列宽(因此每个图像大约占视口的 25%)。任何 767px 或更低的东西都只有 1 列宽(在较低的分辨率下使其全宽)。
每个图像我有三个来源。220 像素、260 像素和 420 像素。
从上面可以看出,尺寸不遵循视口越小图像越小的常规约定,因此我一直在研究和尝试各种选项。
根据建议,我一直在隐身模式下使用谷歌浏览器,并为 Internet Explorer 进行私密浏览,在加载页面之前浏览器视口很小,等等......以确保我所做的任何更改都得到更新。
我所使用的当前代码是我最接近使其工作的代码,它在堆栈溢出时遵循某人的查询(类似于我的)的答案。但是,在尝试实现它时,我似乎仍然无法让浏览器加载正确的图像,它总是加载较大的 420 像素宽图像。
我的代码目前是这样的:
<img sizes="(min-width: 767px) 420px, 100vm"
srcset="images/thumbs/image_420.jpg 420w,
images/thumbs/image_260.jpg 260w,
images/thumbs/image_220.jpg 220w"
src="images/thumbs/image_220.jpg"
alt="example image"
/>Run Code Online (Sandbox Code Playgroud)
我在讨论这个主题时的第二个查询。最好将我的场景中的默认 img src 设置为 260px 图像吗?因为如果 srcset 不被理解,这将涵盖桌面和移动浏览器,并且只有中等大小的视口(460-767px)会受到影响。还是最好将默认图像设置为最小尺寸?
任何建议将不胜感激,谢谢。
- 编辑 -
只是一个快速更新,我以为我昨天已经从逻辑上弄清楚了,但它没有用,所以我不确定我是否仍然理解计算的整个概念。我最近的编辑看起来像这样:
<img sizes="(min-width: 460px) 420px, (min-width: 768px) 220px, 100vm"
srcset="images/thumbs/image_420.jpg …Run Code Online (Sandbox Code Playgroud)我正在尝试从字符串中提取序列号以进行匹配比较,并认为使用preg_match可能是可行的,但是我在正则表达式方面苦苦挣扎。
有人可以提供任何帮助吗?
当前尝试如下:
$example = "CPM-200:0123456L|CPM-100:9876543L|CJ Pro:CJP33-011";
pre_match("/\:(.*?)\|/", $example, $matches);
var_dump($matches);
Run Code Online (Sandbox Code Playgroud)
目前,以上内容吐出:
Array(2) {
[0]=> string(10) ":0123456L|"
[1]=> string(8) "0123456L"
}
Run Code Online (Sandbox Code Playgroud)
但我实际上想将其提取为:
Array(0) {
[0] => 0123456L
[1] => 9876543L
[2] => CJP33-011
}
Run Code Online (Sandbox Code Playgroud)
我从未对regex感到满意!我尝试了各种组合,而以上是我设法达到的最接近的组合。需要找到一个像样的在线教程。
我想将软件许可证密钥存储在我的mysql数据库的一个字段中,但我希望以乱码格式存储许可证号,这样如果数据库被泄露,许可证密钥将无法使用.
许可证密钥字段有3种可能的方案:
我想在存储之前加扰许可证,然后在登录后向用户显示时,再次运行相同的加扰功能以解密许可证.
我想我需要先检查许可证的格式.
我设置了以下内容:
function scramble($scramblestr) {
// check string length
$length = strlen($scramblestr);
// if 10 digit license (all numbers)
if ($length == 10) {
$1st = substr($scramblestr, 0, 1);
$2nd = substr($scramblestr, 1, 1);
$3rd = substr($scramblestr, 2, 1);
$4th = substr($scramblestr, 3, 1);
$5th = substr($scramblestr, 4, 1);
$6th = substr($scramblestr, 5, 1);
$7th = substr($scramblestr, 6, 1);
$8th = substr($scramblestr, 7, 1);
$9th = substr($scramblestr, 8, 1); …Run Code Online (Sandbox Code Playgroud)