- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在可点击的项目列表上使用涟漪效应,但是当我将该列表封装到自定义元素中时,我面临的问题是涟漪效应遍布整个屏幕。如果我将它放在我的 index.html 中效果很好,但是当我创建包含在那里的自定义元素时会失败。查看问题的图片:
我一直在阅读类似的问题,答案是使容器相对,这应该已经完成。所以我想知道在使用自定义元素的波纹效果时是否需要在主机中设置任何特殊属性。
我的示例代码如下。
索引.html
<!doctype html>
<html lang="">
<head>
<meta charset="utf-8">
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>List test</title>
<script src="bower_components/webcomponentsjs/webcomponents-lite.js"></script>
<link rel="import" href="elements/elements.html">
<style>
paper-icon-item {
position: relative;
height: 48px;
}
</style>
</head>
<body unresolved class="fullbleed layout vertical">
<template is="dom-bind" id="app">
<my-list></my-list>
</template>
<script src="scripts/app.js"></script>
</body>
</html>
<dom-module id="my-list">
<style>
paper-icon-item {
position: relative;
height: 48px;
}
</style>
<template>
<section>
<div class="menu">
<paper-icon-item>
<div class="label" fit>Mark as unread</div>
<paper-ripple></paper-ripple>
</paper-icon-item>
<paper-icon-item>
<div class="label" fit>Mark as important</div>
<paper-ripple></paper-ripple>
</paper-icon-item>
<paper-icon-item>
<div class="label" fit>Add to Tasks</div>
<paper-ripple></paper-ripple>
</paper-icon-item>
<paper-icon-item>
<div class="label" fit>Create event</div>
<paper-ripple></paper-ripple>
</paper-icon-item>
</div>
</section>
</template>
</dom-module>
<script>
(function () {
Polymer({
is: 'my-list'
});
})();
</script>
最佳答案
注意:如果您在 paper-ripple
的最新版本中遇到此行为或类似行为,此答案解决的问题很可能不是您遇到的问题(请参阅下面的更新)。paper-ripple
具有以下 CSS(仅显示相关行):
:host {
display: block;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
}
paper-ripple
的父元素没有
position: relative
设置,这将导致波纹填充第一个
position: relative
它找到的父级(可能不是其直接父级)或整个文档,以先到者为准。
paper-ripple
在有
position: relative
在它的 CSS 中。
paper-ripple
1.0.1 于 2015 年 6 月 11 日发布,其中包括
the PR fixing this problem ,进行此答案中推荐的修复
过时的。 只需更新
bower.json
绑定(bind)到
PolymerElements/paper-ripple#^1.0.1
.
paper-ripple
引起的.正在发生的事情是
paper-ripple
元素的目标是
my-list
元素而不是其父
paper-icon-item
元素。
paper-ripple
的自定义元素阴影/阴影 DOM 中的元素,并调整其大小以适合您的元素。<dom-module id="ripple-wrapper">
<style is="custom-style">
:host {
display: block;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
}
</style>
<template>
<paper-ripple></paper-ripple>
</template>
</dom-module>
<script>
Polymer({ is: 'ripple-wrapper' });
</script>
paper-ripple
的修补副本。通过设置 paper-ripple
的版本在您的 bower.json
文件到 vsimonian/paper-ripple#containment-fix
.bower.json
中的临时更改当不再需要它们时。 关于Polymer 1.0 - 纸张波纹遍布整个屏幕,而不是适合元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30631617/
我正在尝试在我的 1.0 polymer 元素之一中实现纸张 slider ... 我得到的错误是: Uncaught TypeError: this.has
我还是 Vaadin 的新手,我正在尝试使用 Vaadin 14 实现 @polymenr/paper-slider 组件。 我已经下载了项目https://github.com/berndhopp/
我还是 Vaadin 的新手,我正在尝试使用 Vaadin 14 实现 @polymenr/paper-slider 组件。 我已经下载了项目https://github.com/berndhopp/
我正在尝试像这样实现页面 curl : 我遵循了这个例子:http://codepen.io/anon/pen/fpjoa 如果我创建新的 PHP 和 CSS 文件并从上面的链接复制粘贴代码,结果是正
我是一名优秀的程序员,十分优秀!