我制作了一个粘性页脚高级组件,将其他组件包裹在其内部:
页脚.js
//this is a higher-order component that wraps other components placing them in footer
var style = {
backgroundColor: "#F8F8F8",
borderTop: "1px solid #E7E7E7",
textAlign: "center",
padding: "20px",
position: "fixed",
left: "0",
bottom: "0",
height: "60px",
width: "100%",
};
const Footer = React.createClass({
render: function() {
return (
<div style={style}>
{this.props.children}
</div>
);
}
});
export default Footer;
用法:
<Footer><Button>test</Button></Footer>
但它隐藏了页面的内容:
这看起来是一个常见的问题,所以我搜索了一下,发现了这个问题,对于粘性页脚,建议使用 FlexBox。但是在这个演示中,页脚位于页面的最底部,而我需要页脚始终显示在页面上,并且内容在上述区域内滚动(如在SO chat 中)。除此之外,还有一个建议是使用自定义样式表规则更改所有其他组件。是否可以仅使用样式化页脚组件来实现我需要的功能,以便代码保持module化?