-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OverlayPanel - cannot use inside divs with position: relative #676
Comments
Fixed via #679. Try appendTo="body" so it can be appended where you want it to be flexible. We've solved similar issues with overlays in PrimeFaces using this approach. |
appendTo="body" is not working. First time it is opening offscreen. Is there any other solution. |
@phanisri456 I tried, it works fine. Could you provide a reproducible plunker example? |
I am also facing the same issue. I have a label inside a row grouped datatable. Clicking on the label showing overlay-panel far way from button. |
You need appendTo="body" on overlay panel to solve this. It works for me. Provide a plunkr to request a reopen please. |
oooffffo!! It is bootstrap which is messing up with the top style property of p-overlaypanel. |
appendTo="body" works better for me. Only thing is - The content shows up on the left side when I need it on the right side. Anyone know how to do this? |
@cagataycivici it would be nice if p-overlayPanel could do relative positioning like p-dropdown. Using appendTo="body" doesn't work well in the case the p-overlayPanel is inside a p-dialog. This causes z-index problems where the p-overlayPanel ends up underneath the p-dialog. I was able to do my own relative positioning by setting "willShow" to false immediately after calling "show()." I then called domHandler.relativePosition(). |
It would be great if appendTo="body" was added to the docs of p-overlayPanel... |
I have the same issue. If you append to body the overlay it will stay fixed when you scroll.
|
Triggering the event based on element #id worked for me. By doing the toggle from typescript, I was able to pin point the element I need to attach the overlay panel. HTML:
<--loop the data-->
<--outside of the table add the overlay menu-->
TS File: showOverlayPanel($event: MouseEvent, rowwiseData: any, id:string) { |
Hello,
I have this html:
When clicking the button, the overlay panel appears a bit below the button. This offset is roughly equal to the height of [...other html]. I inspected the div inside the and noticed a position absolute with something like top: 300px. Obviously the 300px start from its closest non static parent, instead of the window.
Therefore, in order to fix it, I think you should move and append the panel to the element, like kendoNotification from the Telerik kendoUi framework does. Or do something else, because as it is the correct behavior of the OverlayPanel depends on the developer to place it in the correct place.
The text was updated successfully, but these errors were encountered: