问题的关键究竟为何? border边框影响布局之问题的发生,到底需要如何解决,这种事实对本人来说意义重大,相信对这个世界也是有一定意义的。 一般来说, 培根曾经提到过,深窥自己的心,而后发觉一切的奇迹在你自己。这不禁令我深思。 曾经看到过过一句富有哲理的话,有时候实践是一种巧妙地避开思考的方法。带着这句话,我们还要更加慎重的审视这个问题: 编程实践中,若border边框影响布局出现了,我们就不得不考虑它出现了的事实。
mark {background: yellow; }
mark.current {
background: orange;
box-shadow: inset 0px 0px 0px .5px #ff0000;
}
??题外话:这是用于我的浏览器与查词APP的页内搜索的。上下切换当前高亮的搜索结果时,我会给当前高亮的搜索结果变换一个背景色、加上一个红色边框。但红色边框会影响布局,导致文档流上下左右横跳。 ??这个页内搜索基于Mark.js,支持正则表达式、通配符、多关键词等,可控性超强。在其Github页面我还发掘了一个关于iframe的bug,Mark.js在检测到iframe时,会过度调用它的遍历搜索方法,造成多次着色,这是由于其大量采用了各种forEach+回调,而这样的编程方式不易于中断,易于引发BUG。
对比测试:
<style>
div{padding:8px;margin:10px}
.good{box-shadow: inset 0px 0px 0px 5px #ff0000;}
.bad{border:5px solid #FF0000}
</style>
<div class='good'>伪造边框测试,不影响布局</div>
<div class='good'>伪造边框测试,不影响布局</div>
<div class='bad'>边框测试,影响布局</div>
<div class='bad'>边框测试,影响布局</div>
唐·李世民说过一句富有内涵的话,以人为镜,可以知得失。这让我有所感悟。 于是我看到***他人***之方法。百度取得前排数文,都是预先留出间距,即使无需显示边框,也加以边框显示,颜色写作创思普然特(transparent)。黑格尔曾经提到过,只有永远躺在泥坑里的人,才不会再掉进坑里。然而就这样选择永远躺在泥坑里的人,采取此类方案的已然躺平,不能得知开源世界的美妙。
开源世界的美妙,希望每个人都可以知晓。编程的实践,一砖一瓦没有捷径(没得硕特卡特)。但是在开源的世界里借鉴他人,可以借力他人,更可以站在巨人的肩膀。伟大的数学家、哲学家、科学家牛顿曾经说过“如果说我看得比别人更远些,那是因为我站在巨人的肩膀上”,这不是教条,而是真言。真言千秋万古而真谛不灭,长久地照亮天空。
我长久地思考此类问题,那么表面的问题究竟反应了什么样的实质呢?辛苦找到的妙笔佳方被人蔑视,抄袭的答案却往往千篇一律而泛滥成灾。佳方如此短小而精悍,却因为其短小而被视作劣质,使我推荐受影响、提示应该设置成“仅你自己可见”(然而根本没有这个选项)。搜索引擎的前排都是转载他人的、千篇一律的博文,是真正不好的方案、是集体躺平的做法啊! 所以, 笛卡儿在不经意间这样说过,我的努力求学没有得到别的好处,只不过是愈来愈发觉自己的无知。这似乎解答了我的疑惑。虽然伟人说过团结就是力量,虽然人类文明互为基石,然而具体到渺小的个人,可能努力就没有那么重要了,关键是取得他人的理解。不然,有的时候就会像西西弗斯一般,努力推进的一点点进程很快就会回落、被推平。
斯宾诺莎说过一句富有哲理的话,最大的骄傲于最大的自卑都表示心灵的最软弱无力。昨日的辉煌,往大了讲,那是古希腊的群星与阿拉伯的数字、是汉代的纸、是今日科技的基石,也是最大的骄傲之一。那么希望今日的种种谦卑耕耘可以为明日祈福。最困难的事情就是认识自己。我希望诸位也能好好地体会这句话。 所谓border边框影响布局的问题,关键是要去思考实现边框的样式需要如何去写。 卢梭在不经意间这样说过,浪费时间是一桩大罪过。这似乎解答了我的疑惑,就不再废话了。不经意间我就找到了正确的方案,十分短小也十分精悍,那个方法就是这个样子的:
box-shadow: inset 0px 0px 0px .5px #ff0000;
代替了
border:5px solid #FF0000
而这些并不是完全重要,更加重要的问题是, 这样看来, 对我个人而言,border边框影响布局不仅仅是一个布局的细节,还可能会改变整个页面的观感。地球人曾经说过,魔鬼藏在细节之中;汉代古人曾经说过,授人以鱼不如授人以渔。我希望诸位也能好好地体会这两句话。 那么今后,该怎么做才能更好地解决此类问题呢?——
F12
前端开发第二重要的快捷键,仅次于Ctrl+C
Chrome 自带的调试工具非常给力,不仅仅是代码上的调试,还能有美术上的外观搭配与样式调整,十分便捷。
具体来说,对于边框而言,能调节得有限。但是对于方形阴影来说,很多都可可交互式地去调节:外镶内嵌、X Y 偏移、模糊与扩展,只需鼠标点点,css代码自动出来,这就是最好的工具与帮手。
|