很多网页还用着html4,不用JS,教你只用纯HTML做出几个实用网页效果

转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。

原文出处:https://blog.bitsrc.io/pure-html-widgets-for-your-web-application-c9015563af7a

在我们以往看到的页面效果中,很多效果是需要JS搭配使用的,而今天在本文中,我将介绍如何使用纯HTML打造属于自己的实用效果。

1.折叠手风琴

使用Details和Summary标签可以创建没有JavaScript代码的可折叠手风琴。

效果:

cbaec59fb7604a30edf52abc15131c23.gif

HTML

Languages Used

This page was written in HTML and CSS. The CSS was compiled from SASS. Regardless, this could all be done in plain HTML and CSS

How it Works

Using the sibling and checked selectors, we can determine the styling of sibling elements based on the checked state of the checkbox input element.

CSS

*{font-size:1rem;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

}details{border:1px solid #aaa;border-radius:4px;padding:.5em .5em 0;

}summary{font-weight:bold;margin:-.5em -.5em 0;padding:.5em;

}details[open]{padding:.5em;

}details[open] summary{border-bottom:1px solid #aaa;margin-bottom:.5em;

}

浏览器支持:

10c27f52c26f2d252deddef63e57e68a.png

2.进度条

该Meter和Progress 的元素标签的基础上,你可以调整属性呈现在屏幕上的进度条。进步有两个属性:max和value校准进度条,而Meter标签提供了更多的定制属性。

效果:

d54eec085e501bbd2a619119752a90c7.png

HTML:

Upload progress:

at 50/100


File progress:

70%

CSS:

body{margin:50px;

}label{padding-right:10px;font-size:1rem;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

}

浏览器支持:

e0870905d1760d6089cff6d6bff97e52.png

3. 更多输入类型

在定义输入元素时,您要知道现代浏览器已经允许您指定足够多的输入类型了。除了你应该已经知道text,email,password,number这些类型外,还有下面的这些。

date 将显示本机日期选择器

datetime-local 更丰富的日期和时间选择器

month 友好的月份选择器

tel会让你输入一个电话号码。在移动浏览器上打开它,弹出的键盘将发生变化,同样的email也是如此。

search 将输入文本框设置为友好的搜索样式。

效果:

14e352b26a00d3317f60e8f8fc20a4d0.gif

HTML:

Enter date:

Enter date & time:

Enter month:

Search for:

Enter Phone:

CSS:

input, label{display:block;margin:5px;}input{margin-bottom:18px;}

各种新输入类型的MDN文档非常广泛且信息量很大。此外,检查移动输入类型以了解用户在移动浏览器上时这些输入元素的键盘行为。

4. 视频和音频

video和audio元素虽然现在已经成为HTML规范的一部分,但是你一样会惊讶于你可以使用video标签在屏幕上渲染出一个体面的视频播放器。

Sorry, your browser doesn't support embedded videos.

视频标记中值得注意的一些属性包括:

poster 下载视频时要显示封面的URL

preload 是否在页面加载时预加载整个视频

autoplay 视频是否应该在页面加载后自动播放

浏览器支持:

0188d1d3362176534f09d1623515239c.png

5.校对文本

当你想显示历史编辑及校对的情况时,blockquote,del和ins元素标签可以派上用场了。

示例:

1ab19a4e14bdcb29fc454ab67aeef724.png

HTML:

There is nothing no code either good or bad, but thinking running itmakes it so.

CSS:

del{text-decoration:line-through;background-color:#fbb;color:#555;

}ins{text-decoration:none;background-color:#d4fcbc;

}blockquote{padding-left:15px;line-height:30px;border-left:3px solid #d7d7db;font-size:1rem;background:#eee;width:200px;

}

6.更统一的引号

由于中英文引号的不同,使用标记可以让您很好的解决这个问题,它可使你的内容在大多数浏览器上更一致地呈现引号。

0aea614f0036ce3afe4e6ccd12da596e.png

HTML:

Don Corleone said I'm gonna make him an offer he can't refuse. Okay? I want you to leave it all to me. Go on, go back to the party.


Don Corleone said "I'm gonna make him an offer he can't refuse. Okay? I want you to leave it all to me. Go on, go back to the party."

CSS:

body{margin:50px;

}q{font-style:italic;color:#000000bf;

}

7. 键盘标签

标签应该是一个少为人知的冷门标签,但这个能使用更好的方式来说明组合键的样式。

9ec1a1cdbf5b529b1e107fe78ed0c1d9.png

HTML:

I know that CTRL+C and CTRL+V a are like the most used key combinations

CSS:

body{margin:50px;

}kbd{display:inline-block;margin:0 .1em;padding:.1em .6em;font-size:11px;line-height:1.4;color:#242729;text-shadow:0 1px 0 #FFF;background-color:#e1e3e5;border:1px solid #adb3b9;border-radius:3px;box-shadow:0 1px 0 rgba(12,13,14,0.2), 0 0 0 2px #FFF inset;white-space:nowrap;

}

8.使用HTML共享代码

使用figcaption pre code标签,您可以使用纯HTML和CSS呈现出不错的代码片段。

1cc245812bd9223afdb50b0b025661df.png

HTML:

Defining a css colorproperty for a class called 'golden'
 
 

.golden {

color: golden;

}

CSS:

pre{background-color:#ffbdbd;

}

这篇文章也只是抛砖引玉,也许您也有更多私藏的使用技巧,不妨也贴出来分享给大家。

另外,如果您不仅仅限于以上的效率,希望有更完整的动态功能。

例如:您希望在您的页面中加入Excel功能,可以尝试纯前端表格控件SpreadJS,再或者您希望为用户提供更完备、更高效的前端UI控件,您也不妨可以试试WimoJS。

想信她们都能为您的应用增色不少。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值