Is there any easy way to remove any styling from my elements, that is applied to "generic" selectors?

By generic I mean, `section` or `p` or `div` or `button` ... basically where it's not targeting the element based on a class or ID but based on the actual element itself.

The problem is I have some HTML and CSS I am outputting on a user's website, but i have no control over their stylesheet that is loaded on the same page. The problem is when the user's stylesheet or custom CSS targets basic generic HTML elements (like `section` or `button` or `p`). My code has all specific CSS selectors targeting them, but sometimes sites with this "generic" styling causes display issues with my HTML if I haven't specifically defined a property.

For example, I don't want any specific padding on a `p` element -- so I don't have anything set for `padding` on my `p` elements .. but if the user's stylesheet does -- it is applied to to my element. I'm trying to not have to define **every single property on every single element of mine**, just to make sure the users stylesheet is not applied to my elements.

Was thinking of something along the lines of this psuedo-code:

```
#my-main-wrapper > section, p, div, button {
    all: unset;
}

```

Where it would unset any styles that are being applied to any elements inside the `#my-main-wrapper` element using basic selectors like `section` or `p` or `div` or `button` .. thus ONLY the styles I have defined that target those elements using specific class or ID are applied.