Change in size/position of element triggers undesirable size/position change to other elements
I have a vertical scrolling dynamic panel that contains a number of horizontal scrolling dynamic panels, each which contains a data grid. For each horizontal panel, I have a large version and a small version, one of which is hidden. On the left side of the screen, before each horizontal panel, I have text rotated 270 degrees which serves as a label for the panel, also in a large size and a small size. When one of these labels is tapped, it toggles the size of its associated horizontal panel and the other horizontal panels move up or down accordingly.
In sizing and positioning everything in a way that maintains alignment, regardless of which horizontal panels have their large versions or small versions visible, I'm encountering strange behavior. If I change the size or position of an element, I'll find that this change has somehow triggered an undesirable change in size or position of one or more other elements, usually only a pixel or two, but enough to then throw of the ultimate alignment I'm looking to achieve. This ends up being a cyclical frustration where getting one thing aligned has now taken something else out of alignment.
I can only think of three possible sources of the problem I am having:
- Rotated text affects the alignment of elements in an unintuitive way. I'm not sure why, when text is rotated, the values used to position it vertically and horizontally don't reflect the fact that it has been rotated. To align a 100px by 31px text box that has been rotated 270 degrees to the left side of the screen requires a left position of -33px and a top position of 34px. Huh? Intuitively it would be 0px and 0px. The translation should be invisible to the user.
- Element dimensions and positions are connected in a way I'm not aware of. I can change the width of an element and this can trigger an undesirable change to its top or left setting. Or I click on the incrementing or decrementing arrow for one of the size or position settings and it increments or decrements in multiples of two. I can directly enter the actual desired value, but that is often the value that ends up being changed by the application when I make an adjustment to another setting.
- There is a bug in the application where changes to a dimension or position setting is triggering changes to other dimension and position settings, but should not be.
Have you seen this type of behavior before? Is there a solution or is it something I"m doing or not understanding? Any help would be greatly appreciated.