Proving $\operatorname{span}\{h_{nm}(x,y)=f_n(x)g_m(y)\mid n,m\in\mathbb{N}\}$ is dense in $C([0,1]^2)$ w.r.t $L^2([0,1]^2)$ norm I am given two orthonormal bases for $L^2[0,1]$, $\{f_n\}_{n=1}^\infty$ and $\{g_m\}_{m=1}^\infty$, that consist of continuous functions (but not necessarily all continuous functions).
I'm trying to prove that $$\operatorname{span}\bigg\{h_{nm}(x,y)=f_n(x)g_m(y)\mid n,m\in\mathbb{N}\bigg\}$$ is dense in $C([0,1]^2)$ with respect to the $L^2([0,1]^2)$ norm defined by the following inner product:
$$\langle f, g\rangle = \int_{[0,1]}\int_{[0,1]}f(x,y)\overline{g(x,y)}dxdy $$
I'm supposed to use an earlier result where we have proven that if $X,Y$ are compact metric spaces, then for all $h\in C(X,Y)$ and for all $\epsilon>0$ there are $f_1,\dots f_n \in C(X)$ and $g_1,\dots g_n \in C(Y)$ such that
$$ \Big |\Big | h(x,y)-\sum_{i=1}^nf_i(x)g_i(y) \Big |\Big |_{\infty} < \epsilon $$
Ideally, $\{f_n\}_{n=1}^\infty$ and $\{g_m\}_{m=1}^\infty$ would be precisely $C(X)$ and $C(Y)$, because then the result would immediately follow (it is easy to show that the sup norm is stronger than the $L^2([0,1]^2)$ norm), but I was not able to prove that they are (it also makes sense that this would have been too strong, but was worth a shot).
Next, I tried using the fact that $span\{f_i \}$ and $span\{g_i \}$ are dense in $C(X), C(Y)$, respectively (w.r.t the $L^2$ norm) but this got very messy with multiple sums and eventually didn't work.
As far as I can tell - there isn't much else I could try. Am I missing something trivial here?
Edit: Since this is part of a larger problem where I am trying to prove that the set is dense in $L^2([0,1]^2)$ (in fact, that what's inside the span is a basis), I cannot use this as a means to prove the above.
 A: The (linear) span of the set $\mathcal{V}=\{h(x,y)=f(x)g(y):f,g\in\mathcal{C}([0,1])\}$ is a ring of bounded continuous functions that separate points in $[0,1]^2$. By the Stone-Weierstrass theorem its uniform closure is $\mathcal{C}([0,1]^2)$ (The latter space is dense in $L_p([0,1]^2)$ for all $0<p<\infty$). Given $h\in L_2([0,1]^2)$ and $\varepsilon>0$, let $\phi\in\mathcal{C}([0,1]^2)$ such that
$$\|h-\phi\|_2<\varepsilon/3$$
Let $g\in\mathcal{V}$ such that $\|\phi-g\|_u<\varepsilon/3$. Then
$$\|g-\phi\|_2\leq\varepsilon/3$$
Finally, the assumptions about the sequence $\{f_m, g_m:m\in\mathbb{N}\}$, there is $\psi\in\operatorname{span}\{f_m(x)g_n(y)\}$ such that
$$\|g-\psi\|_2<\varepsilon/3$$
Indeed, if $g(x,y)=\sum^N_{j=1}a_j p_j(x)q_j(y)$, then each $p_j(x)$ can be approximated in $L_2([0,1])$ by functions in the span of $\{f_m(x)\}$; similarly, each $q_j(y)$ can be approximated in $L_2([0,1])$ by functions in the span of $\{g_m(y)\}$. The multiplication of linear combinations of functions in $\{f_m(x)\}$ by linear combinations of functions in $\{g_m(y)\}$ are in $\operatorname{span}\{f_m(x)g_n(y)\}$. Then, for example,
$$\begin{align}
p_j(y)q_j(y)&=(p_j(x)-F_j(x)+F_j(x))(q_j(y)-G_j(y)+G_j(y))\\
&=F_j(x)G_j(y)+(p_j(x)-F_j(x))((q_j(y)-G_j(y)\\
&\qquad+(p_j(x)-F_j(x))G_j(y)+F_j(x)(q_j(y)-G_j(y))
\end{align}
$$
Choose $F_j(x)\in\operatorname{span}(f_m)$ and $G_j(y)\in\operatorname{span}\{g_m(y)\}$ close enough to $p_j(x)$ and $q_j(y)$ respectively so that
$$|a_j|\big(\|q_j-G_j\|_{L_2([0,1])}\|F_j\|_{L_2([0,1])}+\|p_j-F_j\|_{L_2([0,1])}\|G_j\|_{L_2([0,1])}\big)<\varepsilon/3N$$
for each $1\leq j\leq N$. Thus, $g(x,y)$ can be approximated in $L_2$ a function  $\psi(x,y)\in\operatorname{span}\{f_m(x)g_n(y)\}$ so that
$$\|g-\psi\|_2<\varepsilon/3$$
