Showing a language is a subset of another language?
A language $B$ is a superset of another language $A$ if it contains all the strings of $A$ and some more. In your example, $A$ contains $ab$, but $B$ only contains string with $c$'s in them, so $ab\not\in B$, so $B$ is not a superset of $A$, i.e. $A \not\subseteq B$.

What you are looking for is a language $B$ which is not context-free but which does contain all of $A$. For example, you could let $C$ be some very difficult language, for example, the language of TMs that halt on the empty tape, or the language of prime numbers, and let $B=A\cup C$. Then whatever the complexity it $B$, you can be sure that it's not context-free. This trick won't always work. For example, if $A=\Sigma^{*}$, then no superset of $A$ exists, and certainly not one that isn't context-free.

What you read about one language a subset of another language is probably succinctly captured in the Wikipediag page on context-free languages (link) and that of regular languages (link) under the section of closure properties. A closure property is a theorem states that, for example, if $L_1$ and $L_2$ are both context-free, then $L_1 \cup L_2$ is also a context-free language. In this case you can say context-free languages are closed under union.